# nodes

node_type: nodes-base.emelia
package_name: n8n-nodes-base
display_name: Emelia
description: Consume the Emelia API
category: input
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "emeliaApi",
  "required": true,
  "testedBy": "emeliaApiTest"
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Emelia node documentation
  description: Learn how to use the Emelia node in n8n. Follow technical documentation to integrate Emelia node into your workflows.
  contentType: [integration, reference]
  ---

  # Emelia node

  Use the Emelia node to automate work in Emelia, and integrate Emelia with other applications. n8n has built-in support for a wide range of Emelia features, including creating campaigns, and adding contacts to a list. 

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

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

  ## Operations

  * Campaign
      * Add Contact
      * Create
      * Get
      * Get All
      * Pause
      * Start
  * Contact List
      * Add
      * Get All

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "campaign",
      "options": [
        {
          "name": "Campaign",
          "value": "campaign"
        },
        {
          "name": "Contact List",
          "value": "contactList"
        }
      ],
      "required": true,
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Add Contact",
          "value": "addContact",
          "action": "Add a contact to a campaign"
        },
        {
          "name": "Create",
          "value": "create",
          "action": "Create a campaign"
        },
        {
          "name": "Duplicate",
          "value": "duplicate",
          "action": "Duplicate a campaign"
        },
        {
          "name": "Get",
          "value": "get",
          "action": "Get a campaign"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "action": "Get many campaigns"
        },
        {
          "name": "Pause",
          "value": "pause",
          "action": "Pause a campaign"
        },
        {
          "name": "Start",
          "value": "start",
          "action": "Start a campaign"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Campaign Name or ID",
      "name": "campaignId",
      "type": "options",
      "default": [],
      "description": "The ID of the campaign to add the contact to. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "addContact"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getCampaigns"
      }
    },
    {
      "displayName": "Contact Email",
      "name": "contactEmail",
      "type": "string",
      "default": "",
      "description": "The email of the contact to add to the campaign",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "addContact"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Custom Fields",
          "name": "customFieldsUi",
          "placeholder": "Add Custom Field",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": true
          },
          "description": "Filter by custom fields",
          "default": {},
          "options": [
            {
              "name": "customFieldsValues",
              "displayName": "Custom Field",
              "values": [
                {
                  "displayName": "Field Name",
                  "name": "fieldName",
                  "type": "string",
                  "default": "",
                  "description": "The name of the field to add custom field to"
                },
                {
                  "displayName": "Value",
                  "name": "value",
                  "type": "string",
                  "default": "",
                  "description": "The value to set on custom field"
                }
              ]
            }
          ]
        },
        {
          "displayName": "First Name",
          "name": "firstName",
          "type": "string",
          "default": "",
          "description": "First name of the contact to add"
        },
        {
          "displayName": "Last Contacted",
          "name": "lastContacted",
          "type": "dateTime",
          "default": "",
          "description": "Last contacted date of the contact to add"
        },
        {
          "displayName": "Last Name",
          "name": "lastName",
          "type": "string",
          "default": "",
          "description": "Last name of the contact to add"
        },
        {
          "displayName": "Last Open",
          "name": "lastOpen",
          "type": "dateTime",
          "default": "",
          "description": "Last opened date of the contact to add"
        },
        {
          "displayName": "Last Replied",
          "name": "lastReplied",
          "type": "dateTime",
          "default": "",
          "description": "Last replied date of the contact to add"
        },
        {
          "displayName": "Mails Sent",
          "name": "mailsSent",
          "type": "number",
          "default": 0,
          "description": "Number of emails sent to the contact to add"
        },
        {
          "displayName": "Phone Number",
          "name": "phoneNumber",
          "type": "string",
          "default": "",
          "description": "Phone number of the contact to add"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "addContact"
          ]
        }
      }
    },
    {
      "displayName": "Campaign Name",
      "name": "campaignName",
      "type": "string",
      "default": "",
      "description": "The name of the campaign to create",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Campaign ID",
      "name": "campaignId",
      "type": "string",
      "default": "",
      "description": "The ID of the campaign to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "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": [
            "campaign"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Campaign ID",
      "name": "campaignId",
      "type": "string",
      "default": "",
      "description": "The ID of the campaign to pause. The campaign must be in RUNNING mode.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "pause"
          ]
        }
      }
    },
    {
      "displayName": "Campaign ID",
      "name": "campaignId",
      "type": "string",
      "default": "",
      "description": "The ID of the campaign to start. Email provider and contacts must be set.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "start"
          ]
        }
      }
    },
    {
      "displayName": "Campaign Name or ID",
      "name": "campaignId",
      "type": "options",
      "default": "",
      "description": "The ID of the campaign to duplicate. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "duplicate"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getCampaigns"
      }
    },
    {
      "displayName": "New Campaign Name",
      "name": "campaignName",
      "type": "string",
      "default": "",
      "description": "The name of the new campaign to create",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "duplicate"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Copy Contacts",
          "name": "copyContacts",
          "type": "boolean",
          "default": false,
          "description": "Whether to copy all the contacts from the original campaign"
        },
        {
          "displayName": "Copy Email Provider",
          "name": "copyProvider",
          "type": "boolean",
          "default": true,
          "description": "Whether to set the same email provider than the original campaign"
        },
        {
          "displayName": "Copy Email Sequence",
          "name": "copyMails",
          "type": "boolean",
          "default": true,
          "description": "Whether to copy all the steps of the email sequence from the original campaign"
        },
        {
          "displayName": "Copy Global Settings",
          "name": "copySettings",
          "type": "boolean",
          "default": true,
          "description": "Whether to copy all the general settings from the original campaign"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "duplicate"
          ],
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Add",
          "value": "add",
          "action": "Add a contact list"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "action": "Get many contact lists"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "contactList"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Contact List Name or ID",
      "name": "contactListId",
      "type": "options",
      "default": [],
      "description": "The ID of the contact list to add the contact to. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "contactList"
          ],
          "operation": [
            "add"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getContactLists"
      }
    },
    {
      "displayName": "Contact Email",
      "name": "contactEmail",
      "type": "string",
      "default": "",
      "description": "The email of the contact to add to the contact list",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "contactList"
          ],
          "operation": [
            "add"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Custom Fields",
          "name": "customFieldsUi",
          "placeholder": "Add Custom Field",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": true
          },
          "description": "Filter by custom fields",
          "default": {},
          "options": [
            {
              "name": "customFieldsValues",
              "displayName": "Custom Field",
              "values": [
                {
                  "displayName": "Field Name",
                  "name": "fieldName",
                  "type": "string",
                  "default": "",
                  "description": "The name of the field to add custom field to"
                },
                {
                  "displayName": "Value",
                  "name": "value",
                  "type": "string",
                  "default": "",
                  "description": "The value to set on custom field"
                }
              ]
            }
          ]
        },
        {
          "displayName": "First Name",
          "name": "firstName",
          "type": "string",
          "default": "",
          "description": "First name of the contact to add"
        },
        {
          "displayName": "Last Contacted",
          "name": "lastContacted",
          "type": "dateTime",
          "default": "",
          "description": "Last contacted date of the contact to add"
        },
        {
          "displayName": "Last Name",
          "name": "lastName",
          "type": "string",
          "default": "",
          "description": "Last name of the contact to add"
        },
        {
          "displayName": "Last Open",
          "name": "lastOpen",
          "type": "dateTime",
          "default": "",
          "description": "Last opened date of the contact to add"
        },
        {
          "displayName": "Last Replied",
          "name": "lastReplied",
          "type": "dateTime",
          "default": "",
          "description": "Last replied date of the contact to add"
        },
        {
          "displayName": "Mails Sent",
          "name": "mailsSent",
          "type": "number",
          "default": 0,
          "description": "Number of emails sent to the contact to add"
        },
        {
          "displayName": "Phone Number",
          "name": "phoneNumber",
          "type": "string",
          "default": "",
          "description": "Phone number of the contact to add"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "contactList"
          ],
          "operation": [
            "add"
          ]
        }
      }
    },
    {
      "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": [
            "contactList"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "contactList"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    }
  ]

operations:
  [
    {
      "operation": "addContact",
      "name": "Add Contact"
    },
    {
      "operation": "create",
      "name": "Create"
    },
    {
      "operation": "duplicate",
      "name": "Duplicate"
    },
    {
      "operation": "get",
      "name": "Get"
    },
    {
      "operation": "getAll",
      "name": "Get Many"
    },
    {
      "operation": "pause",
      "name": "Pause"
    },
    {
      "operation": "start",
      "name": "Start"
    }
  ]


node_type: nodes-base.emeliaTrigger
package_name: n8n-nodes-base
display_name: Emelia Trigger
description: Handle Emelia campaign activity events via webhooks
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "emeliaApi",
  "required": true,
  "testedBy": "emeliaApiTest"
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Emelia Trigger node documentation
  description: Learn how to use the Emelia Trigger node in n8n. Follow technical documentation to integrate Emelia Trigger node into your workflows.
  contentType: [integration, reference]
  ---

  # Emelia Trigger node

  [Emelia](https://emelia.io){:target=_blank .external-link} is a cold-mailing tool.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Emelia Trigger integrations](https://n8n.io/integrations/emelia-trigger/){:target=_blank .external-link} page.
  ///

  ## Events

  - Email Bounced
  - Email Opened
  - Email Replied
  - Email Sent
  - Link Clicked
  - Unsubscribed Contact

properties_schema:
  [
    {
      "displayName": "Campaign Name or ID",
      "name": "campaignId",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "required": true,
      "typeOptions": {
        "loadOptionsMethod": "getCampaigns"
      }
    },
    {
      "displayName": "Events",
      "name": "events",
      "type": "multiOptions",
      "default": [],
      "options": [
        {
          "name": "Email Bounced",
          "value": "bounced"
        },
        {
          "name": "Email Opened",
          "value": "opened"
        },
        {
          "name": "Email Replied",
          "value": "replied"
        },
        {
          "name": "Email Sent",
          "value": "sent"
        },
        {
          "name": "Link Clicked",
          "value": "clicked"
        },
        {
          "name": "Unsubscribed Contact",
          "value": "unsubscribed"
        }
      ],
      "required": true
    }
  ]


node_type: nodes-base.erpNext
package_name: n8n-nodes-base
display_name: ERPNext
description: Consume ERPNext API
category: output
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "erpNextApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: ERPNext node documentation
  description: Learn how to use the ERPNext node in n8n. Follow technical documentation to integrate ERPNext node into your workflows.
  contentType: [integration, reference]
  ---

  # ERPNext node

  Use the ERPNext node to automate work in ERPNext, and integrate ERPNext with other applications. n8n has built-in support for a wide range of ERPNext features, including creating, updating, retrieving, and deleting documents. 

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

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

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

  ## Operations

  **Document**
  - Create a document
  - Delete a document
  - Retrieve a document
  - Retrieve all documents
  - Update a document

  ## Templates and examples

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

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "document",
      "options": [
        {
          "name": "Document",
          "value": "document"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a document",
          "action": "Create a document"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a document",
          "action": "Delete a document"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a document",
          "action": "Get a document"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many documents",
          "action": "Get many documents"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a document",
          "action": "Update a document"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "DocType Name or ID",
      "name": "docType",
      "type": "options",
      "default": "",
      "description": "DocType whose documents to retrieve. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getDocTypes"
      }
    },
    {
      "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": [
            "document"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 10,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Field Names or IDs",
          "name": "fields",
          "type": "multiOptions",
          "typeOptions": {
            "loadOptionsMethod": "getDocFilters",
            "loadOptionsDependsOn": [
              "docType"
            ]
          },
          "default": [],
          "description": "Comma-separated list of fields to return. Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "placeholder": "name,country"
        },
        {
          "displayName": "Filters",
          "name": "filters",
          "type": "fixedCollection",
          "default": {},
          "placeholder": "Add Filter",
          "description": "Custom Properties",
          "typeOptions": {
            "multipleValues": true
          },
          "options": [
            {
              "displayName": "Property",
              "name": "customProperty",
              "values": [
                {
                  "displayName": "Field Name or ID",
                  "name": "field",
                  "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": "getDocFields",
                    "loadOptionsDependsOn": [
                      "docType"
                    ]
                  },
                  "default": ""
                },
                {
                  "displayName": "Operator",
                  "name": "operator",
                  "type": "options",
                  "default": "is",
                  "options": [
                    {
                      "name": "EQUALS, or GREATER",
                      "value": "equalsGreater"
                    },
                    {
                      "name": "EQUALS, or LESS",
                      "value": "equalsLess"
                    },
                    {
                      "name": "IS",
                      "value": "is"
                    },
                    {
                      "name": "IS GREATER",
                      "value": "greater"
                    },
                    {
                      "name": "IS LESS",
                      "value": "less"
                    },
                    {
                      "name": "IS NOT",
                      "value": "isNot"
                    }
                  ]
                },
                {
                  "displayName": "Value",
                  "name": "value",
                  "type": "string",
                  "default": "",
                  "description": "Value of the operator condition"
                }
              ]
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "DocType Name or ID",
      "name": "docType",
      "type": "options",
      "default": "",
      "description": "DocType you would like to create. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getDocTypes"
      }
    },
    {
      "displayName": "Properties",
      "name": "properties",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Property",
          "name": "customProperty",
          "placeholder": "Add Property",
          "values": [
            {
              "displayName": "Field Name or ID",
              "name": "field",
              "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": "getDocFields",
                "loadOptionsDependsOn": [
                  "docType"
                ]
              },
              "default": []
            },
            {
              "displayName": "Value",
              "name": "value",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "DocType Name or ID",
      "name": "docType",
      "type": "options",
      "default": "",
      "description": "The type of document you would like to get. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getDocTypes"
      }
    },
    {
      "displayName": "Document Name",
      "name": "documentName",
      "type": "string",
      "default": "",
      "description": "The name (ID) of document you would like to get",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "DocType Name or ID",
      "name": "docType",
      "type": "options",
      "default": "",
      "description": "The type of document you would like to delete. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getDocTypes"
      }
    },
    {
      "displayName": "Document Name",
      "name": "documentName",
      "type": "string",
      "default": "",
      "description": "The name (ID) of document you would like to get",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "DocType Name or ID",
      "name": "docType",
      "type": "options",
      "default": "",
      "description": "The type of document you would like to update. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getDocTypes"
      }
    },
    {
      "displayName": "Document Name",
      "name": "documentName",
      "type": "string",
      "default": "",
      "description": "The name (ID) of document you would like to get",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Properties",
      "name": "properties",
      "type": "fixedCollection",
      "default": {},
      "description": "Properties of request body",
      "options": [
        {
          "displayName": "Property",
          "name": "customProperty",
          "values": [
            {
              "displayName": "Field Name or ID",
              "name": "field",
              "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": "getDocFields",
                "loadOptionsDependsOn": [
                  "docType"
                ]
              },
              "default": ""
            },
            {
              "displayName": "Value",
              "name": "value",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "document"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a document"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a document"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve a document"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve many documents"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a document"
    }
  ]


node_type: nodes-base.errorTrigger
package_name: n8n-nodes-base
display_name: Error Trigger
description: Triggers the workflow when another workflow has an error
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Error Trigger node documentation
  description: Learn how to use the Error Trigger node in n8n. Follow technical documentation to integrate Error Trigger node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Error Trigger node

  You can use the Error Trigger node to create error workflows. When another linked workflow fails, this node gets details about the failed workflow and the errors, and runs the error workflow.

  ## Usage

  --8<-- "_snippets/flow-logic/create-set-error-workflow.md"


  Note the following:

  * If a workflow uses the Error Trigger node, you don't have to activate the workflow.
  * If a workflow contains the Error Trigger node, by default, the workflow uses itself as the error workflow.
  * You can't test error workflows when running workflows manually. The Error Trigger only runs when an automatic workflow errors.

  ## Templates and examples

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

  ## Related resources

  You can use the [Stop And Error](/integrations/builtin/core-nodes/n8n-nodes-base.stopanderror.md) node to send custom messages to the Error Trigger.

  Read more about [Error workflows](/flow-logic/error-handling.md) in n8n workflows. 

  ## Error data

  --8<-- "_snippets/integrations/builtin/core-nodes/error-trigger/error-data.md"

properties_schema:
  [
    {
      "displayName": "This node will trigger when there is an error in another workflow, as long as that workflow is set up to do so. <a href=\"https://docs.n8n.io/integrations/core-nodes/n8n-nodes-base.errortrigger\" target=\"_blank\">More info<a>",
      "name": "notice",
      "type": "notice",
      "default": ""
    }
  ]


node_type: nodes-base.evaluation
package_name: n8n-nodes-base
display_name: Evaluation
description: Runs an evaluation
category: transform
development_style: programmatic
version: 4.6
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Evaluation node documentation
  description: Documentation for the Evaluation node in n8n, a workflow automation platform. Includes guidance on usage and links to examples.
  contentType: [integration, reference]
  ---

  # Evaluation node

  The Evaluation node performs various operations related to [evaluations](/advanced-ai/evaluations/overview.md) to validate your AI workflow reliability. You can use the Evaluation node to conditionally execute logic based on whether the workflow is under evaluation, to write evaluation outcomes back to a Google Sheet dataset, or to log scoring metrics for your evaluation performance to n8n's evaluations tab.

  /// note | Credentials
  The Evaluation node's **Set Outputs** operation uses Google Sheets to record evaluation outcomes. To use that operation, you must configure a [Google Sheets credential](/integrations/builtin/credentials/google/index.md).
  ///

  ## Operations

  The Evaluation node offers the following operations:

  * [**Set Outputs**](#set-outputs): Write the results of an evaluation back to a Google Sheet dataset.
  * [**Set Metrics**](#set-metrics): Record metrics scoring the evaluation performance to n8n's **Evaluations** tab.
  * [**Check If Evaluating**](#check-if-evaluating): Branches the workflow execution logic depending on whether the current execution is an evaluation.

  The parameters and options available depend on the operation you select.

  ### Set Outputs

  The **Set Outputs** operation has the following parameters:

  - **Credential to connect with**: Create or select an existing [Google Sheets credentials](/integrations/builtin/credentials/google/index.md).
  * **Document Containing Dataset**: Choose the spreadsheet document you want to write the evaluation results to. Usually this is the same document you select in the [Evaluation Trigger](/integrations/builtin/core-nodes/n8n-nodes-base.evaluationtrigger.md) node.
      * Select **From list** to choose the spreadsheet title from the dropdown list, **By URL** to enter the url of the spreadsheet, or **By ID** to enter the `spreadsheetId`. 
      * You can find the `spreadsheetId` in a Google Sheets URL: `https://docs.google.com/spreadsheets/d/spreadsheetId/edit#gid=0`.
  * **Sheet Containing Dataset**: Choose the sheet you want to write the evaluation results to. Usually this is the same sheet you select in the [Evaluation Trigger](/integrations/builtin/core-nodes/n8n-nodes-base.evaluationtrigger.md) node.
      * Select **From list** to choose the sheet title from the dropdown list, **By URL** to enter the url of the sheet, **By ID** to enter the `sheetId`, or **By Name** to enter the sheet title. 
      * You can find the `sheetId` in a Google Sheets URL: `https://docs.google.com/spreadsheets/d/aBC-123_xYz/edit#gid=sheetId`. 

  You define the items to write to the Google Sheet in the **Outputs** section. For each output, you set the following:

  * **Name**: The Google Sheet column name to write the evaluation results to.
  * **Value**: The value to write to the Google Sheet.

  ### Set Metrics

  The **Set Metrics** operation includes a **Metrics to Return** section where you define the metrics to record and track for your evaluations. You can see the metric results in your workflow's **Evaluations** tab.

  For each metric you wish to record, you set the following details:

  * **Name**: The name to use for the metric.
  * **Value**: The numeric value to record. Once you run your evaluation, you can drag and drop values from previous nodes here. Metric values must be numeric.

  ### Check If Evaluating

  The **Check If Evaluating** operation does not have any parameters. This operation provides branching output connectors so that you can conditionally execute logic depending on whether the current execution is an evaluation or not.

  ## Templates and examples

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

  ## Related resources

  To learn more about n8n evaluations, check out the [evaluations documentation](/advanced-ai/evaluations/overview.md)

  n8n provides a trigger node for evaluations. You can find the node docs [here](/integrations/builtin/core-nodes/n8n-nodes-base.evaluationtrigger.md).

  For common questions or issues and suggested solutions, refer to the evaluations [tips and common issues](/advanced-ai/evaluations/tips-and-common-issues.md) page.

properties_schema:
  [
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "setOutputs",
      "options": [
        {
          "name": "Set Outputs",
          "value": "setOutputs"
        },
        {
          "name": "Set Metrics",
          "value": "setMetrics"
        },
        {
          "name": "Check If Evaluating",
          "value": "checkIfEvaluating"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "oAuth2",
      "options": [
        {
          "name": "Service Account",
          "value": "serviceAccount"
        },
        {
          "name": "OAuth2 (recommended)",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Credentials",
      "name": "credentials",
      "type": "credentials",
      "default": ""
    },
    {
      "displayName": "Document Containing Dataset",
      "name": "documentId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "setOutputs"
          ]
        }
      }
    },
    {
      "displayName": "Sheet Containing Dataset",
      "name": "sheetName",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "setOutputs"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsDependsOn": [
          "documentId.value"
        ]
      }
    },
    {
      "displayName": "Outputs",
      "name": "outputs",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Filter",
          "name": "values",
          "values": [
            {
              "displayName": "Name",
              "name": "outputName",
              "type": "string",
              "default": ""
            },
            {
              "displayName": "Value",
              "name": "outputValue",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "setOutputs"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Output",
        "multipleValues": true
      }
    },
    {
      "displayName": "Calculate the score(s) for the evaluation, then map them into this node. They will be displayed in the ‘evaluations’ tab, not the Google Sheet. <a href='https://docs.n8n.io/advanced-ai/evaluations/metric-based-evaluations/#2-calculate-metrics' target='_blank'>View metric examples</a>",
      "name": "notice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "operation": [
            "setMetrics"
          ]
        }
      }
    },
    {
      "displayName": "Metrics to Return",
      "name": "metrics",
      "type": "assignmentCollection",
      "default": {
        "assignments": [
          {
            "name": "",
            "value": "",
            "type": "number"
          }
        ]
      },
      "displayOptions": {
        "show": {
          "operation": [
            "setMetrics"
          ]
        }
      },
      "typeOptions": {
        "assignment": {
          "disableType": true,
          "defaultType": "number"
        }
      }
    },
    {
      "displayName": "Routes to the ‘evaluation’ branch if the execution started from an evaluation trigger. Otherwise routes to the ‘normal’ branch.",
      "name": "notice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "operation": [
            "checkIfEvaluating"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "setOutputs",
      "name": "Set Outputs"
    },
    {
      "operation": "setMetrics",
      "name": "Set Metrics"
    },
    {
      "operation": "checkIfEvaluating",
      "name": "Check If Evaluating"
    }
  ]

credentials_required:
  [
    {
      "name": "googleApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "serviceAccount"
          ],
          "operation": [
            "setOutputs"
          ]
        }
      },
      "testedBy": "googleApiCredentialTest"
    },
    {
      "name": "googleSheetsOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ],
          "operation": [
            "setOutputs"
          ]
        }
      }
    }
  ]


node_type: nodes-base.eventbriteTrigger
package_name: n8n-nodes-base
display_name: Eventbrite Trigger
description: Handle Eventbrite events via webhooks
category: trigger
development_style: programmatic
version: 1
operations: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Eventbrite Trigger node documentation
  description: Learn how to use the Eventbrite Trigger node in n8n. Follow technical documentation to integrate Eventbrite Trigger node into your workflows.
  contentType: [integration, reference]
  ---

  # Eventbrite Trigger node

  [Eventbrite](https://www.eventbrite.com/){:target=_blank .external-link} is an event management and ticketing website. The service allows users to browse, create, and promote local events.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Eventbrite Trigger integrations](https://n8n.io/integrations/eventbrite-trigger/){:target=_blank .external-link} page.
  ///

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "privateKey",
      "options": [
        {
          "name": "Private Key",
          "value": "privateKey"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Organization Name or ID",
      "name": "organization",
      "type": "options",
      "default": "",
      "description": "The Eventbrite Organization to work on. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "typeOptions": {
        "loadOptionsMethod": "getOrganizations"
      }
    },
    {
      "displayName": "Event Name or ID",
      "name": "event",
      "type": "options",
      "default": "",
      "description": "Limit the triggers to this event. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "typeOptions": {
        "loadOptionsDependsOn": [
          "organization"
        ],
        "loadOptionsMethod": "getEvents"
      }
    },
    {
      "displayName": "Actions",
      "name": "actions",
      "type": "multiOptions",
      "default": [],
      "description": "One or more action to subscribe to",
      "options": [
        {
          "name": "attendee.checked_in",
          "value": "attendee.checked_in"
        },
        {
          "name": "attendee.checked_out",
          "value": "attendee.checked_out"
        },
        {
          "name": "attendee.updated",
          "value": "attendee.updated"
        },
        {
          "name": "event.created",
          "value": "event.created"
        },
        {
          "name": "event.published",
          "value": "event.published"
        },
        {
          "name": "event.unpublished",
          "value": "event.unpublished"
        },
        {
          "name": "event.updated",
          "value": "event.updated"
        },
        {
          "name": "order.placed",
          "value": "order.placed"
        },
        {
          "name": "order.refunded",
          "value": "order.refunded"
        },
        {
          "name": "order.updated",
          "value": "order.updated"
        },
        {
          "name": "organizer.updated",
          "value": "organizer.updated"
        },
        {
          "name": "ticket_class.created",
          "value": "ticket_class.created"
        },
        {
          "name": "ticket_class.deleted",
          "value": "ticket_class.deleted"
        },
        {
          "name": "ticket_class.updated",
          "value": "ticket_class.updated"
        },
        {
          "name": "venue.updated",
          "value": "venue.updated"
        }
      ],
      "required": true
    },
    {
      "displayName": "Resolve Data",
      "name": "resolveData",
      "type": "boolean",
      "default": true,
      "description": "By default does the webhook-data only contain the URL to receive the object data manually. If this option gets activated, it will resolve the data automatically."
    }
  ]

credentials_required:
  [
    {
      "name": "eventbriteApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "privateKey"
          ]
        }
      }
    },
    {
      "name": "eventbriteOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ]
        }
      }
    }
  ]


node_type: nodes-base.executeCommand
package_name: n8n-nodes-base
display_name: Execute Command
description: Executes a command on the host
category: transform
development_style: programmatic
version: 1
operations: []
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Execute Command
  description: Documentation for the Execute Command node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: high
  ---

  # Execute Command

  The Execute Command node runs shell commands on the host machine that runs n8n.

  /// note | Which shell runs the command?
  This node executes the command in the default shell of the host machine. For example, `cmd` on Windows and `zsh` on macOS.

  If you run n8n with Docker, your command will run in the n8n container and not the Docker host.
  ///

  /// note | Not available on Cloud
  This node isn't available on n8n Cloud.
  ///

  ## Node parameters

  Configure the node using the following parameters.

  ### Execute Once

  Choose whether you want the node to execute only once (turned on) or once for every item it receives as input (turned off).

  ### Command

  Enter the command to execute on the host machine. Refer to sections below for examples of running [multiple commands](#run-multiple-commands) and [cURL commands](#run-curl-command).

  #### Run multiple commands

  Use one of two methods to run multiple commands in one Execute Command node:

  * Enter each command on one line separated by `&&`. For example, you can combine the change directory (cd) command with the list (ls) command using `&&`.

      ```bash
      cd bin && ls
      ```

  * Enter each command on a separate line. For example, you can write the list (ls) command on a new line after the change directory (cd) command.

      ```bash
      cd bin
      ls
      ```

  #### Run cURL command

  You can also use the [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/index.md) node to make a cURL request.

  If you want to run the curl command in the Execute Command node, you will have to build a Docker image based on the existing n8n image. The default n8n Docker image uses Alpine Linux. You will have to install the curl package.

  1. Create a file named `Dockerfile`.
  2. Add the below code snippet to the Dockerfile.

      ```shell
      FROM docker.n8n.io/n8nio/n8n
      USER root
      RUN apk --update add curl
      USER node
      ```

  3. In the same folder, execute the command below to build the Docker image.

      ```shell
      docker build -t n8n-curl
      ```

  4. Replace the Docker image you used before. For example, replace `docker.n8n.io/n8nio/n8n` with `n8n-curl`.
  5. Run the newly created Docker image. You'll now be able to execute ssh using the Execute Command Node.

  ## Templates and examples

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

  ## Common issues

  For common questions or issues and suggested solutions, refer to [Common Issues](/integrations/builtin/core-nodes/n8n-nodes-base.executecommand/common-issues.md).

properties_schema:
  [
    {
      "displayName": "Execute Once",
      "name": "executeOnce",
      "type": "boolean",
      "default": true,
      "description": "Whether to execute only once instead of once for each entry"
    },
    {
      "displayName": "Command",
      "name": "command",
      "type": "string",
      "default": "",
      "description": "The command to execute",
      "required": true,
      "typeOptions": {
        "rows": 5
      }
    }
  ]


node_type: nodes-base.executeWorkflow
package_name: n8n-nodes-base
display_name: Execute Sub-workflow
description: Execute another workflow
category: transform
development_style: programmatic
version: 1.2
operations:
  [
  {
  "operation": "call_workflow",
  "name": "Execute a Sub-Workflow"
  }
  ]

credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Execute Sub-workflow
  description: Documentation for the Execute Sub-workflow node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: high
  ---

  # Execute Sub-workflow

  Use the Execute Sub-workflow node to run a different workflow on the host machine that runs n8n.

  ## Node parameters

  ### Source

  Select where the node should get the sub-workflow's information from:

  - **Database**: Select this option to load the workflow from the database by ID. You must also enter either:
  	- **From list**: Select the workflow from a list of workflows available to your account.
  	- **Workflow ID**: Enter the ID for the workflow. The URL of the workflow contains the ID after `/workflow/`. For example, if the URL of a workflow is `https://my-n8n-acct.app.n8n.cloud/workflow/abCDE1f6gHiJKL7`, the **Workflow ID** is `abCDE1f6gHiJKL7`.
  - **Local File**: Select this option to load the workflow from a locally saved JSON file. You must also enter:
  	- **Workflow Path**: Enter the path to the local JSON workflow file you want the node to execute.
  - **Parameter**: Select this option to load the workflow from a parameter. You must also enter:
  	- **Workflow JSON**: Enter the JSON code you want the node to execute.
  - **URL**: Select this option to load the workflow from a URL. You must also enter:
  	- **Workflow URL**: Enter the URL you want to load the workflow from.

  ### Workflow Inputs

  If you select a sub-workflow using the **database** and **From list** options, the sub-workflow's input items will automatically display, ready for you to fill in or map values.

  You can optionally remove requested input items, in which case the sub-workflow receives `null` as the item's value. You can also enable **Attempt to convert types** to try to automatically convert data to the sub-workflow item's requested type.

  Input items won't appear if the sub-workflow's Workflow Input Trigger node uses the "Accept all data" input data mode.

  ### Mode

  Use this parameter to control the execution mode for the node. Choose from these options:

  - **Run once with all items**: Pass all input items into a single execution of the node.
  - **Run once for each item**: Execute the node once for each input item in turn.

  ## Node options

  This node includes one option: **Wait for Sub-Workflow Completion**. This lets you control whether the main workflow should wait for the sub-workflow's completion before moving on to the next step (turned on) or whether the main workflow should continue without waiting (turned off).

  ## Templates and examples

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

  ## Set up and use a sub-workflow

  This section walks through setting up both the parent workflow and sub-workflow.

  --8<-- "_snippets/flow-logic/subworkflow-usage.md"


  ## How data passes between workflows

  --8<-- "_snippets/flow-logic/subworkflow-data-flow.md"

properties_schema:
  [
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "hidden",
      "default": "call_workflow",
      "options": [
        {
          "name": "Execute a Sub-Workflow",
          "value": "call_workflow"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "This node is out of date. Please upgrade by removing it and adding a new one",
      "name": "outdatedVersionWarning",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "lte": 1.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Source",
      "name": "source",
      "type": "options",
      "default": "database",
      "description": "Where to get the workflow to execute from",
      "options": [
        {
          "name": "Database",
          "value": "database",
          "description": "Load the workflow from the database by ID"
        },
        {
          "name": "Local File",
          "value": "localFile",
          "description": "Load the workflow from a locally saved file"
        },
        {
          "name": "Parameter",
          "value": "parameter",
          "description": "Load the workflow from a parameter"
        },
        {
          "name": "URL",
          "value": "url",
          "description": "Load the workflow from an URL"
        }
      ],
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "lte": 1.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Source",
      "name": "source",
      "type": "options",
      "default": "database",
      "description": "Where to get the workflow to execute from",
      "options": [
        {
          "name": "Database",
          "value": "database",
          "description": "Load the workflow from the database by ID"
        },
        {
          "name": "Define Below",
          "value": "parameter",
          "description": "Pass the JSON code of a workflow"
        }
      ],
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 1.2
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Workflow ID",
      "name": "workflowId",
      "type": "string",
      "default": "",
      "description": "Note on using an expression here: if this node is set to run once with all items, they will all be sent to the <em>same</em> workflow. That workflow's ID will be calculated by evaluating the expression for the <strong>first input item</strong>.",
      "required": true,
      "displayOptions": {
        "show": {
          "source": [
            "database"
          ],
          "@version": [
            1
          ]
        }
      }
    },
    {
      "displayName": "Workflow",
      "name": "workflowId",
      "type": "workflowSelector",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "source": [
            "database"
          ],
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Workflow Path",
      "name": "workflowPath",
      "type": "string",
      "default": "",
      "description": "The path to local JSON workflow file to execute",
      "required": true,
      "displayOptions": {
        "show": {
          "source": [
            "localFile"
          ]
        }
      }
    },
    {
      "displayName": "Workflow JSON",
      "name": "workflowJson",
      "type": "json",
      "default": "\n\n\n",
      "description": "The workflow JSON code to execute",
      "required": true,
      "displayOptions": {
        "show": {
          "source": [
            "parameter"
          ]
        }
      },
      "typeOptions": {
        "rows": 10
      }
    },
    {
      "displayName": "Workflow URL",
      "name": "workflowUrl",
      "type": "string",
      "default": "",
      "description": "The URL from which to load the workflow from",
      "required": true,
      "displayOptions": {
        "show": {
          "source": [
            "url"
          ]
        }
      }
    },
    {
      "displayName": "Any data you pass into this node will be output by the Execute Workflow Trigger. <a href=\"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.executeworkflow/\" target=\"_blank\">More info</a>",
      "name": "executeWorkflowNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "lte": 1.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Workflow Inputs",
      "name": "workflowInputs",
      "type": "resourceMapper",
      "default": {
        "mappingMode": "defineBelow",
        "value": null
      },
      "required": true,
      "displayOptions": {
        "show": {
          "source": [
            "database"
          ],
          "@version": [
            {
              "_cnd": {
                "gte": 1.2
              }
            }
          ]
        },
        "hide": {
          "workflowId": [
            ""
          ]
        }
      },
      "typeOptions": {
        "loadOptionsDependsOn": [
          "workflowId.value"
        ],
        "resourceMapper": {
          "localResourceMapperMethod": "loadSubWorkflowInputs",
          "valuesLabel": "Workflow Inputs",
          "mode": "map",
          "fieldWords": {
            "singular": "input",
            "plural": "inputs"
          },
          "addAllFields": true,
          "multiKeyMatch": false,
          "supportAutoMap": false,
          "showTypeConversionOptions": true
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Mode",
      "name": "mode",
      "type": "options",
      "default": "once",
      "options": [
        {
          "name": "Run once with all items",
          "value": "once",
          "description": "Pass all items into a single execution of the sub-workflow"
        },
        {
          "name": "Run once for each item",
          "value": "each",
          "description": "Call the sub-workflow individually for each item"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Wait For Sub-Workflow Completion",
          "name": "waitForSubWorkflow",
          "type": "boolean",
          "default": true,
          "description": "Whether the main workflow should wait for the sub-workflow to complete its execution before proceeding"
        }
      ]
    }
  ]


node_type: nodes-base.executeWorkflowTrigger
package_name: n8n-nodes-base
display_name: Execute Workflow Trigger
description: Helpers for calling other n8n workflows. Used for designing modular, microservice-like workflows.
category: trigger
development_style: programmatic
version: 1.1
operations: []
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Execute Sub-workflow Trigger node documentation
  description: Learn how to use the Execute Sub-workflow Trigger node in n8n. Follow technical documentation to integrate Execute Sub-workflow Trigger node into your workflows.
  contentType: [integration, reference]
  priority: high
  ---

  # Execute Sub-workflow Trigger node

  Use this node to start a workflow in response to another workflow. It should be the first node in the workflow.

  n8n allows you to call workflows from other workflows. This is useful if you want to:

  * Reuse a workflow: for example, you could have multiple workflows pulling and processing data from different sources, then have all those workflows call a single workflow that generates a report.
  * Break large workflows into smaller components.

  ## Usage

  This node runs in response to a call from the [Execute Sub-workflow](/integrations/builtin/core-nodes/n8n-nodes-base.executeworkflow.md) or [Call n8n Workflow Tool](/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolworkflow.md) nodes.

  --8<-- "_snippets/flow-logic/subworkflow-usage.md"

  ## Templates and examples

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

  ## How data passes between workflows

  --8<-- "_snippets/flow-logic/subworkflow-data-flow.md"

properties_schema:
  [
    {
      "displayName": "Events",
      "name": "events",
      "type": "hidden",
      "default": "worklfow_call",
      "options": [
        {
          "name": "Workflow Call",
          "value": "worklfow_call",
          "description": "When executed by another workflow using Execute Workflow Trigger",
          "action": "When executed by Another Workflow"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "When an ‘execute workflow’ node calls this workflow, the execution starts here. Any data passed into the 'execute workflow' node will be output by this node.",
      "name": "notice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "eq": 1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "This node is out of date. Please upgrade by removing it and adding a new one",
      "name": "outdatedVersionWarning",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "eq": 1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Input data mode",
      "name": "inputSource",
      "type": "options",
      "default": "workflowInputs",
      "options": [
        {
          "name": "Define using fields below",
          "value": "workflowInputs",
          "description": "Provide input fields via UI"
        },
        {
          "name": "Define using JSON example",
          "value": "jsonExample",
          "description": "Generate a schema from an example JSON object"
        },
        {
          "name": "Accept all data",
          "value": "passthrough",
          "description": "Use all incoming data from the parent workflow"
        }
      ],
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Provide an example object to infer fields and their types.<br>To allow any type for a given field, set the value to null.",
      "name": "jsonExample_notice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ],
          "inputSource": [
            "jsonExample"
          ]
        }
      }
    },
    {
      "displayName": "JSON Example",
      "name": "jsonExample",
      "type": "json",
      "default": "{\n  \"aField\": \"a string\",\n  \"aNumber\": 123,\n  \"thisFieldAcceptsAnyType\": null,\n  \"anArray\": []\n}",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ],
          "inputSource": [
            "jsonExample"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Workflow Input Schema",
      "name": "workflowInputs",
      "type": "fixedCollection",
      "default": {},
      "description": "Define expected input fields. If no inputs are provided, all data from the calling workflow will be passed through.",
      "options": [
        {
          "name": "values",
          "displayName": "Values",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "placeholder": "e.g. fieldName",
              "description": "A unique name for this workflow input, used to reference it from another workflows",
              "required": true,
              "noDataExpression": true
            },
            {
              "displayName": "Type",
              "name": "type",
              "type": "options",
              "description": "Expected data type for this input value. Determines how this field's values are stored, validated, and displayed.",
              "options": [
                {
                  "name": "Allow Any Type",
                  "value": "any"
                },
                {
                  "name": "String",
                  "value": "string"
                },
                {
                  "name": "Number",
                  "value": "number"
                },
                {
                  "name": "Boolean",
                  "value": "boolean"
                },
                {
                  "name": "Array",
                  "value": "array"
                },
                {
                  "name": "Object",
                  "value": "object"
                }
              ],
              "required": true,
              "default": "string",
              "noDataExpression": true
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ],
          "inputSource": [
            "workflowInputs"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "sortable": true,
        "minRequiredFields": 1
      }
    }
  ]


node_type: nodes-base.executionData
package_name: n8n-nodes-base
display_name: Execution Data
description: Add execution data for search
category: input
development_style: programmatic
version: 1
operations:
  [
  {
  "operation": "save",
  "name": "Save Highlight Data (for Search/review)"
  }
  ]

credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Execution Data
  description: Documentation for the Execution Data node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: high
  ---

  # Execution Data

  Use this node to save metadata for workflow executions. You can then search by this data in the **Executions** list.

  You can retrieve custom execution data during workflow execution using the Code node. Refer to [Custom executions data](/workflows/executions/custom-executions-data.md) for more information.

  /// info | Feature availability
  Available on Pro and Enterprise plans.
  ///

  ## Operations

  * Save Execution Data for Search

  ## Data to Save

  Add a **Saved Field** for each key/value pair of metadata you'd like to save.

  ## Limitations

  The Execution Data node has the following restrictions when storing execution metadata:

  * `key`: limited to 50 characters
  * `value`: limited to 512 characters

  If either the `key` or `value` exceed the above limitations, n8n truncates to their maximum length and outputs a log entry.

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Save important data using this node. It will be displayed on each execution for easy reference and you can filter by it.<br />Filtering is available on Pro and Enterprise plans. <a href='https://n8n.io/pricing/' target='_blank'>More Info</a>",
      "name": "notice",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "save",
      "options": [
        {
          "name": "Save Highlight Data (for Search/review)",
          "value": "save",
          "action": "Save Highlight Data (for search/review)"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Data to Save",
      "name": "dataToSave",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Values",
          "name": "values",
          "values": [
            {
              "displayName": "Key",
              "name": "key",
              "type": "string",
              "default": "",
              "placeholder": "e.g. myKey"
            },
            {
              "displayName": "Value",
              "name": "value",
              "type": "string",
              "default": "",
              "placeholder": "e.g. myValue"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "save"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Saved Field",
        "multipleValues": true
      }
    }
  ]


node_type: nodes-base.facebookGraphApi
package_name: n8n-nodes-base
display_name: Facebook Graph API
description: Interacts with Facebook using the Graph API
category: transform
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "facebookGraphApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Facebook Graph API node documentation
  description: Learn how to use the Facebook Graph API node in n8n. Follow technical documentation to integrate Facebook Graph API node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Facebook Graph API node

  Use the Facebook Graph API node to automate work in Facebook Graph API, and integrate Facebook Graph API with other applications. n8n has built-in support for a wide range of Facebook Graph API features, including using queries GET POST DELETE for several parameters like host URL, request methods and much more.

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

  /// note | Credentials
  Refer to [Facebook Graph API credentials](/integrations/builtin/credentials/facebookgraph.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * **Default**
      * GET
      * POST
      * DELETE 
  * **Video Uploads**
      * GET
      * POST
      * DELETE 


  ### Parameters

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

  * **Host URL**: The host URL for the request. The following options are available:
      * **Default**: Requests are passed to the `graph.facebook.com` host URL. Used for the majority of requests.
      * **Video**: Requests are passed to the `graph-video.facebook.com` host URL. Used for video upload requests only.
  * **HTTP Request Method**: The method to be used for this request, from the following options:
      * **GET**
      * **POST**
      * **DELETE**
  * **Graph API Version**: The version of the [Facebook Graph API](https://developers.facebook.com/docs/graph-api/changelog) to be used for this request.
  * **Node**: The node on which to operate, for example `/<page-id>/feed`. Read more about it in the [official Facebook Developer documentation](https://developers.facebook.com/docs/graph-api/using-graph-api).
  * **Edge**: Edge of the node on which to operate. Edges represent collections of objects which are attached to the node.
  * **Ignore SSL Issues**: Toggle to still download the response even if SSL certificate validation isn't possible.
  * **Send Binary File**: Available for `POST` operations. If enabled binary data is sent as the body. Requires setting the following:
      * **Input Binary Field**: Name of the binary property which contains the data for the file to be uploaded.

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Host URL",
      "name": "hostUrl",
      "type": "options",
      "default": "graph.facebook.com",
      "description": "The Host URL of the request. Almost all requests are passed to the graph.facebook.com host URL. The single exception is video uploads, which use graph-video.facebook.com.",
      "options": [
        {
          "name": "Default",
          "value": "graph.facebook.com"
        },
        {
          "name": "Video Uploads",
          "value": "graph-video.facebook.com"
        }
      ],
      "required": true
    },
    {
      "displayName": "HTTP Request Method",
      "name": "httpRequestMethod",
      "type": "options",
      "default": "GET",
      "description": "The HTTP Method to be used for the request",
      "options": [
        {
          "name": "GET",
          "value": "GET"
        },
        {
          "name": "POST",
          "value": "POST"
        },
        {
          "name": "DELETE",
          "value": "DELETE"
        }
      ],
      "required": true
    },
    {
      "displayName": "Graph API Version",
      "name": "graphApiVersion",
      "type": "options",
      "default": "",
      "description": "The version of the Graph API to be used in the request",
      "options": [
        {
          "name": "Default",
          "value": ""
        },
        {
          "name": "v22.0",
          "value": "v22.0"
        },
        {
          "name": "v21.0",
          "value": "v21.0"
        },
        {
          "name": "v20.0",
          "value": "v20.0"
        },
        {
          "name": "v19.0",
          "value": "v19.0"
        },
        {
          "name": "v18.0",
          "value": "v18.0"
        },
        {
          "name": "v17.0",
          "value": "v17.0"
        },
        {
          "name": "v16.0",
          "value": "v16.0"
        },
        {
          "name": "v15.0",
          "value": "v15.0"
        },
        {
          "name": "v14.0",
          "value": "v14.0"
        },
        {
          "name": "v13.0",
          "value": "v13.0"
        },
        {
          "name": "v12.0",
          "value": "v12.0"
        },
        {
          "name": "v11.0",
          "value": "v11.0"
        },
        {
          "name": "v10.0",
          "value": "v10.0"
        },
        {
          "name": "v9.0",
          "value": "v9.0"
        },
        {
          "name": "v8.0",
          "value": "v8.0"
        },
        {
          "name": "v7.0",
          "value": "v7.0"
        },
        {
          "name": "v6.0",
          "value": "v6.0"
        },
        {
          "name": "v5.0",
          "value": "v5.0"
        },
        {
          "name": "v4.0",
          "value": "v4.0"
        },
        {
          "name": "v3.3",
          "value": "v3.3"
        },
        {
          "name": "v3.2",
          "value": "v3.2"
        },
        {
          "name": "v3.1",
          "value": "v3.1"
        },
        {
          "name": "v3.0",
          "value": "v3.0"
        }
      ],
      "required": true
    },
    {
      "displayName": "Node",
      "name": "node",
      "type": "string",
      "default": "",
      "description": "The node on which to operate. A node is an individual object with a unique ID. For example, there are many User node objects, each with a unique ID representing a person on Facebook.",
      "required": true
    },
    {
      "displayName": "Edge",
      "name": "edge",
      "type": "string",
      "default": "",
      "description": "Edge of the node on which to operate. Edges represent collections of objects which are attached to the node."
    },
    {
      "displayName": "Ignore SSL Issues (Insecure)",
      "name": "allowUnauthorizedCerts",
      "type": "boolean",
      "default": false,
      "description": "Whether to connect even if SSL certificate validation is not possible"
    },
    {
      "displayName": "Send Binary File",
      "name": "sendBinaryData",
      "type": "boolean",
      "default": false,
      "description": "Whether binary data should be sent as body",
      "required": true,
      "displayOptions": {
        "show": {
          "httpRequestMethod": [
            "POST",
            "PUT"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "",
      "description": "For Form-Data Multipart, they can be provided in the format: <code>\"sendKey1:binaryProperty1,sendKey2:binaryProperty2</code>",
      "displayOptions": {
        "hide": {
          "sendBinaryData": [
            false
          ]
        },
        "show": {
          "httpRequestMethod": [
            "POST",
            "PUT"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Fields",
          "name": "fields",
          "placeholder": "Add Field",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": true
          },
          "displayOptions": {
            "show": {
              "/httpRequestMethod": [
                "GET"
              ]
            }
          },
          "description": "The list of fields to request in the GET request",
          "default": {},
          "options": [
            {
              "name": "field",
              "displayName": "Field",
              "values": [
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": "",
                  "description": "Name of the field"
                }
              ]
            }
          ]
        },
        {
          "displayName": "Query Parameters",
          "name": "queryParameters",
          "placeholder": "Add Parameter",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": true
          },
          "description": "The query parameters to send",
          "default": {},
          "options": [
            {
              "name": "parameter",
              "displayName": "Parameter",
              "values": [
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": "",
                  "description": "Name of the parameter"
                },
                {
                  "displayName": "Value",
                  "name": "value",
                  "type": "string",
                  "default": "",
                  "description": "Value of the parameter"
                }
              ]
            }
          ]
        },
        {
          "displayName": "Query Parameters JSON",
          "name": "queryParametersJson",
          "type": "json",
          "default": "{}",
          "placeholder": "{\"field_name\": \"field_value\"}",
          "description": "The query parameters to send, defined as a JSON object"
        }
      ]
    }
  ]


node_type: nodes-base.facebookTrigger
package_name: n8n-nodes-base
display_name: Facebook Trigger
description: Starts the workflow when Facebook events occur
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "facebookGraphAppApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Facebook Trigger
  description: Learn how to use the Facebook Trigger node in n8n. Follow technical documentation to integrate Facebook Trigger node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Facebook Trigger node

  [Facebook](https://www.facebook.com/){:target=_blank .external-link} is a social networking site to connect and share with family and friends online.

  Use the Facebook Trigger node to trigger a workflow when events occur in Facebook.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Facebook Trigger integrations](https://n8n.io/integrations/facebook-trigger/){:target=_blank .external-link} page.
  ///

  ## Objects

  - [**Ad Account**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/ad-account.md): Get updates for certain ads changes.
  - [**Application**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/application.md): Get updates sent to the application.
  - [**Certificate Transparency**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/certificate-transparency.md): Get updates when new security certificates are generated for your subscribed domains, including new certificates and potential phishing attempts.
  - Activity and events in a [**Group**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/group.md)
  - [**Instagram**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/instagram.md): Get updates when someone comments on the Media objects of your app users; @mentions your app users; or when Stories of your app users expire.
  - [**Link**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/link.md): Get updates about the links for rich previews by an external provider
  - [**Page**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/page.md) updates
  - [**Permissions**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/permissions.md): Updates when granting or revoking permissions
  - [**User**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/user.md) profile updates
  - [**WhatsApp Business Account**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/whatsapp.md)
      
      /// note | Use WhatsApp Trigger
      n8n recommends using the [WhatsApp Trigger node](/integrations/builtin/trigger-nodes/n8n-nodes-base.whatsapptrigger.md) with the [WhatsApp credentials](/integrations/builtin/credentials/whatsapp.md) instead of the Facebook Trigger node for these events. The WhatsApp Trigger node has more events to listen to.
      ///

  - [**Workplace Security**](/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger/workplace-security.md)

  For each **Object**, use the **Field Names or IDs** dropdown to select more details on what data to receive. Refer to the linked pages for more details.

  ## Related resources

  View [example workflows and related content](https://n8n.io/integrations/facebook-trigger/){:target=_blank .external-link} on n8n's website.

  Refer to Meta's [Graph API documentation](https://developers.facebook.com/docs/graph-api/webhooks/reference){:target=_blank .external-link} for details about their API.

properties_schema:
  [
    {
      "displayName": "APP ID",
      "name": "appId",
      "type": "string",
      "default": "",
      "description": "Facebook APP ID",
      "required": true
    },
    {
      "displayName": "To watch Whatsapp business account events use the Whatsapp trigger node",
      "name": "whatsappBusinessAccountNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "object": [
            "whatsappBusinessAccount"
          ]
        }
      }
    },
    {
      "displayName": "Object",
      "name": "object",
      "type": "options",
      "default": "user",
      "description": "The object to subscribe to",
      "options": [
        {
          "name": "Ad Account",
          "value": "adAccount",
          "description": "Get updates about Ad Account"
        },
        {
          "name": "Application",
          "value": "application",
          "description": "Get updates about the app"
        },
        {
          "name": "Certificate Transparency",
          "value": "certificateTransparency",
          "description": "Get updates about Certificate Transparency"
        },
        {
          "name": "Group",
          "value": "group",
          "description": "Get updates about activity in groups and events in groups for Workplace"
        },
        {
          "name": "Instagram",
          "value": "instagram",
          "description": "Get updates about comments on your media"
        },
        {
          "name": "Link",
          "value": "link",
          "description": "Get updates about links for rich previews by an external provider"
        },
        {
          "name": "Page",
          "value": "page",
          "description": "Page updates"
        },
        {
          "name": "Permissions",
          "value": "permissions",
          "description": "Updates regarding granting or revoking permissions"
        },
        {
          "name": "User",
          "value": "user",
          "description": "User profile updates"
        },
        {
          "name": "Whatsapp Business Account",
          "value": "whatsappBusinessAccount",
          "description": "Get updates about Whatsapp business account"
        },
        {
          "name": "Workplace Security",
          "value": "workplaceSecurity",
          "description": "Get updates about Workplace Security"
        }
      ],
      "required": true
    },
    {
      "displayName": "Field Names or IDs",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The set of fields in this object that are subscribed to. Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "typeOptions": {
        "loadOptionsMethod": "getObjectFields",
        "loadOptionsDependsOn": [
          "object"
        ]
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Include Values",
          "name": "includeValues",
          "type": "boolean",
          "default": true,
          "description": "Whether change notifications should include the new values"
        }
      ]
    }
  ]


node_type: nodes-base.facebookLeadAdsTrigger
package_name: n8n-nodes-base
display_name: Facebook Lead Ads Trigger
description: Handle Facebook Lead Ads events via webhooks
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "facebookLeadAdsOAuth2Api",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Facebook Lead Ads Trigger node documentation
  description: Learn how to use the Facebook Lead Ads Trigger node in n8n. Follow technical documentation to integrate Facebook Lead Ads Trigger node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Facebook Lead Ads Trigger node

  Use the Facebook Lead Ads Trigger node to respond to events in [Facebook Lead Ads](https://www.facebook.com/business/ads/lead-ads/){:target=_blank .external-link} and integrate Facebook Lead Ads with other applications. n8n has built-in support for responding to new leads.

  On this page, you'll find a list of events the Facebook Lead Ads Trigger node can respond to, and links to more resources.

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

  /// note | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Facebook Lead Ads Trigger integrations](https://n8n.io/integrations/facebook-lead-ads-trigger/){:target=_blank .external-link} page.
  ///

  ## Events

  * New lead

  ## Related resources

  View [example workflows and related content](https://n8n.io/integrations/facebook-lead-ads-trigger/){:target=_blank .external-link} on n8n's website.

  Refer to [Facebook Lead Ads' documentation](https://developers.facebook.com/docs/marketing-api/guides/lead-ads/){:target=_blank .external-link} for details about their API.

  ## Common issues

  Here are some common errors and issues with the Facebook Lead Ads Trigger node and steps to resolve or troubleshoot them.

  ### Workflow only works in testing or production

  Facebook Lead Ads only allows you to register a single webhook per app. This means that every time you switch from using the testing URL to the production URL (and vice versa), Facebook Lead Ads overwrites the registered webhook URL. 

  You may have trouble with this if you try to test a workflow that's also active in production. Facebook Lead Ads will only send events to one of the two webhook URLs, so the other will never receive event notifications.

  To work around this, you can disable your workflow when testing:

  /// warning | Halts production traffic
  This workaround temporarily disables your production workflow for testing. Your workflow will no longer receive production traffic while it's deactivated.
  ///

  1. Go to your workflow page.
  2. Toggle the **Active** switch in the top panel to disable the workflow temporarily.
  3. Test your workflow using the test webhook URL.
  4. When you finish testing, toggle the **Inactive** toggle to enable the workflow again. The production webhook URL should resume working.

properties_schema:
  [
    {
      "displayName": "Due to Facebook API limitations, you can use just one Facebook Lead Ads trigger for each Facebook App",
      "name": "facebookLeadAdsNotice",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Event",
      "name": "event",
      "type": "options",
      "default": "newLead",
      "options": [
        {
          "name": "New Lead",
          "value": "newLead"
        }
      ],
      "required": true
    },
    {
      "displayName": "Page",
      "name": "page",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The page linked to the form for retrieving new leads",
      "required": true
    },
    {
      "displayName": "Form",
      "name": "form",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The form to monitor for fetching lead details upon submission",
      "required": true
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Simplify Output",
          "name": "simplifyOutput",
          "type": "boolean",
          "default": true,
          "description": "Whether to return a simplified version of the webhook event instead of all fields"
        }
      ]
    }
  ]


node_type: nodes-base.figmaTrigger
package_name: n8n-nodes-base
display_name: Figma Trigger (Beta)
description: Starts the workflow when Figma events occur
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "figmaApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Figma Trigger (Beta) node documentation
  description: Learn how to use the Figma Trigger node in n8n. Follow technical documentation to integrate Figma Trigger node into your workflows.
  contentType: [integration, reference]
  ---

  # Figma Trigger (Beta) node

  [Figma](https://www.figma.com/){:target=_blank .external-link} is a prototyping tool which is primarily web-based, with more offline features enabled by desktop applications for macOS and Windows.

  /// warning | Supported Figma Plans
  Figma doesn't support webhooks on the free "Starter" plan. Your team needs to be on the "Professional" plan to use this node.
  ///

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Figma Trigger integrations](https://n8n.io/integrations/figma-trigger-beta/){:target=_blank .external-link} page.
  ///

  ## Events

  - **File Commented**: Triggers when someone comments on a file.
  - **File Deleted**: Triggers when someone deletes an individual file, but not when someone deletes an entire folder with all files.
  - **File Updated**: Triggers when someone saves or deletes a file. A save occurs when someone closes a file within 30 seconds after making changes.
  - **File Version Updated**: Triggers when someone creates a named version in the version history of a file.
  - **Library Publish**: Triggers when someone publishes a library file.

properties_schema:
  [
    {
      "displayName": "Team ID",
      "name": "teamId",
      "type": "string",
      "default": "",
      "description": "Trigger will monitor this Figma Team for changes. Team ID can be found in the URL of a Figma Team page when viewed in a web browser: figma.com/files/team/{TEAM-ID}/.",
      "required": true
    },
    {
      "displayName": "Trigger On",
      "name": "triggerOn",
      "type": "options",
      "default": "",
      "options": [
        {
          "name": "File Commented",
          "value": "fileComment",
          "description": "Triggers when someone comments on a file"
        },
        {
          "name": "File Deleted",
          "value": "fileDelete",
          "description": "Triggers whenever a file has been deleted. Does not trigger on all files within a folder, if the folder is deleted."
        },
        {
          "name": "File Updated",
          "value": "fileUpdate",
          "description": "Triggers whenever a file saves or is deleted. This occurs whenever a file is closed or within 30 seconds after changes have been made."
        },
        {
          "name": "File Version Updated",
          "value": "fileVersionUpdate",
          "description": "Triggers whenever a named version is created in the version history of a file"
        },
        {
          "name": "Library Publish",
          "value": "libraryPublish",
          "description": "Triggers whenever a library file is published"
        }
      ],
      "required": true
    }
  ]


node_type: nodes-base.filemaker
package_name: n8n-nodes-base
display_name: FileMaker
description: Retrieve data from the FileMaker data API
category: input
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "fileMaker",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: FileMaker node documentation
  description: Learn how to use the FileMaker node in n8n. Follow technical documentation to integrate FileMaker node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # FileMaker node

  Use the FileMaker node to automate work in FileMaker, and integrate FileMaker with other applications. n8n has built-in support for a wide range of FileMaker features, including creating, finding, getting, editing, and duplicating files.

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

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

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

  ## Operations

  - Find Records
  - Get Records
  - Get Records by Id
  - Perform Script
  - Create Record
  - Edit Record
  - Duplicate Record
  - Delete Record

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Action",
      "name": "action",
      "type": "options",
      "default": "record",
      "options": [
        {
          "name": "Create Record",
          "value": "create"
        },
        {
          "name": "Delete Record",
          "value": "delete"
        },
        {
          "name": "Duplicate Record",
          "value": "duplicate"
        },
        {
          "name": "Edit Record",
          "value": "edit"
        },
        {
          "name": "Find Records",
          "value": "find"
        },
        {
          "name": "Get Records",
          "value": "records"
        },
        {
          "name": "Get Records By ID",
          "value": "record"
        },
        {
          "name": "Perform Script",
          "value": "performscript"
        }
      ]
    },
    {
      "displayName": "Layout Name or ID",
      "name": "layout",
      "type": "options",
      "default": "",
      "description": "FileMaker Layout Name. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "options": [],
      "required": true,
      "displayOptions": {},
      "typeOptions": {
        "loadOptionsMethod": "getLayouts"
      }
    },
    {
      "displayName": "Record ID",
      "name": "recid",
      "type": "number",
      "default": "",
      "description": "Internal Record ID returned by get (recordid)",
      "required": true,
      "displayOptions": {
        "show": {
          "action": [
            "record",
            "edit",
            "delete",
            "duplicate"
          ]
        }
      }
    },
    {
      "displayName": "Offset",
      "name": "offset",
      "type": "number",
      "default": 1,
      "description": "The record number of the first record in the range of records",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "records"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "records"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Get Portals",
      "name": "getPortals",
      "type": "boolean",
      "default": false,
      "description": "Whether to get portal data as well",
      "displayOptions": {
        "show": {
          "action": [
            "record",
            "records",
            "find"
          ]
        }
      }
    },
    {
      "displayName": "Portals Name or ID",
      "name": "portals",
      "type": "options",
      "default": [],
      "description": "The portal result set to return. Use the portal object name or portal table name. If this parameter is omitted, the API will return all portal objects and records in the layout. For best performance, pass the portal object name or portal table name. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "options": [],
      "displayOptions": {
        "show": {
          "action": [
            "record",
            "records",
            "find"
          ],
          "getPortals": [
            true
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add portal",
        "loadOptionsMethod": "getPortals"
      }
    },
    {
      "displayName": "Response Layout Name or ID",
      "name": "responseLayout",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "options": [],
      "displayOptions": {
        "show": {
          "action": [
            "find"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getResponseLayouts"
      }
    },
    {
      "displayName": "Queries",
      "name": "queries",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "name": "query",
          "displayName": "Query",
          "values": [
            {
              "displayName": "Fields",
              "name": "fields",
              "placeholder": "Add field",
              "type": "fixedCollection",
              "default": {},
              "typeOptions": {
                "multipleValues": true
              },
              "options": [
                {
                  "name": "field",
                  "displayName": "Field",
                  "values": [
                    {
                      "displayName": "Field Name or ID",
                      "name": "name",
                      "type": "options",
                      "default": "",
                      "typeOptions": {
                        "loadOptionsMethod": "getFields"
                      },
                      "options": [],
                      "description": "Search Field. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
                    },
                    {
                      "displayName": "Value",
                      "name": "value",
                      "type": "string",
                      "default": "",
                      "description": "Value to search"
                    }
                  ]
                }
              ],
              "description": "Field Name"
            },
            {
              "displayName": "Omit",
              "name": "omit",
              "type": "boolean",
              "default": false
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "action": [
            "find"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Sort Data?",
      "name": "setSort",
      "type": "boolean",
      "default": false,
      "description": "Whether to sort data",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ]
        }
      }
    },
    {
      "displayName": "Sort",
      "name": "sortParametersUi",
      "type": "fixedCollection",
      "default": {},
      "description": "Sort rules",
      "options": [
        {
          "name": "rules",
          "displayName": "Rules",
          "values": [
            {
              "displayName": "Field Name or ID",
              "name": "name",
              "type": "options",
              "default": "",
              "typeOptions": {
                "loadOptionsMethod": "getFields"
              },
              "options": [],
              "description": "Field Name. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
            },
            {
              "displayName": "Order",
              "name": "value",
              "type": "options",
              "default": "ascend",
              "options": [
                {
                  "name": "Ascend",
                  "value": "ascend"
                },
                {
                  "name": "Descend",
                  "value": "descend"
                }
              ],
              "description": "Sort order"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "setSort": [
            true
          ],
          "action": [
            "find",
            "records"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Before Find Script",
      "name": "setScriptBefore",
      "type": "boolean",
      "default": false,
      "description": "Whether to define a script to be run before the action specified by the API call and after the subsequent sort",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ]
        }
      }
    },
    {
      "displayName": "Script Name or ID",
      "name": "scriptBefore",
      "type": "options",
      "default": "",
      "description": "The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "options": [],
      "required": true,
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ],
          "setScriptBefore": [
            true
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getScripts"
      }
    },
    {
      "displayName": "Script Parameter",
      "name": "scriptBeforeParam",
      "type": "string",
      "default": "",
      "description": "A parameter for the FileMaker script",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ],
          "setScriptBefore": [
            true
          ]
        }
      }
    },
    {
      "displayName": "Before Sort Script",
      "name": "setScriptSort",
      "type": "boolean",
      "default": false,
      "description": "Whether to define a script to be run after the action specified by the API call but before the subsequent sort",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ]
        }
      }
    },
    {
      "displayName": "Script Name or ID",
      "name": "scriptSort",
      "type": "options",
      "default": "",
      "description": "The name of the FileMaker script to be run after the action specified by the API call but before the subsequent sort. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "options": [],
      "required": true,
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ],
          "setScriptSort": [
            true
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getScripts"
      }
    },
    {
      "displayName": "Script Parameter",
      "name": "scriptSortParam",
      "type": "string",
      "default": "",
      "description": "A parameter for the FileMaker script",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ],
          "setScriptSort": [
            true
          ]
        }
      }
    },
    {
      "displayName": "After Sort Script",
      "name": "setScriptAfter",
      "type": "boolean",
      "default": false,
      "description": "Whether to define a script to be run after the action specified by the API call but before the subsequent sort",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ]
        }
      }
    },
    {
      "displayName": "Script Name or ID",
      "name": "scriptAfter",
      "type": "options",
      "default": "",
      "description": "The name of the FileMaker script to be run after the action specified by the API call and after the subsequent sort. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "options": [],
      "required": true,
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ],
          "setScriptAfter": [
            true
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getScripts"
      }
    },
    {
      "displayName": "Script Parameter",
      "name": "scriptAfterParam",
      "type": "string",
      "default": "",
      "description": "A parameter for the FileMaker script",
      "displayOptions": {
        "show": {
          "action": [
            "find",
            "record",
            "records"
          ],
          "setScriptAfter": [
            true
          ]
        }
      }
    },
    {
      "displayName": "Mod ID",
      "name": "modId",
      "type": "number",
      "default": "",
      "description": "The last modification ID. When you use modId, a record is edited only when the modId matches.",
      "displayOptions": {
        "show": {
          "action": [
            "edit"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fieldsParametersUi",
      "type": "fixedCollection",
      "default": {},
      "description": "Fields to define",
      "options": [
        {
          "name": "fields",
          "displayName": "Fields",
          "values": [
            {
              "displayName": "Field Name or ID",
              "name": "name",
              "type": "options",
              "default": "",
              "typeOptions": {
                "loadOptionsMethod": "getFields"
              },
              "options": [],
              "description": "Field Name. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
            },
            {
              "displayName": "Value",
              "name": "value",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "action": [
            "create",
            "edit"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Script Name or ID",
      "name": "script",
      "type": "options",
      "default": "",
      "description": "The name of the FileMaker script to be run. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "options": [],
      "required": true,
      "displayOptions": {
        "show": {
          "action": [
            "performscript"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getScripts"
      }
    },
    {
      "displayName": "Script Parameter",
      "name": "scriptParam",
      "type": "string",
      "default": "",
      "description": "A parameter for the FileMaker script",
      "displayOptions": {
        "show": {
          "action": [
            "performscript"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create Record"
    },
    {
      "operation": "delete",
      "name": "Delete Record"
    },
    {
      "operation": "duplicate",
      "name": "Duplicate Record"
    },
    {
      "operation": "edit",
      "name": "Edit Record"
    },
    {
      "operation": "find",
      "name": "Find Records"
    },
    {
      "operation": "records",
      "name": "Get Records"
    },
    {
      "operation": "record",
      "name": "Get Records By ID"
    },
    {
      "operation": "performscript",
      "name": "Perform Script"
    }
  ]


node_type: nodes-base.readWriteFile
package_name: n8n-nodes-base
display_name: Read/Write Files from Disk
description: Read or write files from the computer that runs n8n
category: input
development_style: programmatic
version: 1
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Read/Write Files from Disk
  description: Documentation for the Read/Write Files from Disk node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: critical
  ---

  # Read/Write Files from Disk

  Use the Read/Write Files from Disk node to read and write files from/to the machine where n8n is running.

  /// note | Self-hosted n8n only
  This node isn't available on n8n Cloud.
  ///

  ## Operations

  - [**Read File(s) From Disk**](#read-files-from-disk): Use this operation to retrieve one or more files from the computer that runs n8n.
  - [**Write File to Disk**](#write-file-to-disk): Use this operation to create a binary file on the computer that runs n8n.

  Refer to the sections below for more information on configuring the node for each operation.

  ## Read File(s) From Disk

  Configure this operation with these parameters:

  * **File(s) Selector**: Enter the path of the file you want to read.
  	- To enter multiple files, enter a page path pattern. You can use these characters to define a path pattern:
  		- `*`: Matches any character zero or more times, excluding path separators.
  		- `**`: Matches any character zero or more times, include path separators.
  		- `?`: Matches any character except for path separators one time.
  		- `[]`: Matches any characters inside the brackets. For example, `[abc]` would match the characters `a`, `b`, or `c`, and nothing else.

  Refer to [Picomatch's Basic globbing](https://github.com/micromatch/picomatch#basic-globbing){:target=_blank .external-link} documentation for more information on these characters and their expected behavior.

  ### Read File(s) From Disk options

  You can also configure this operation with these **Options**:

  * **File Extension**: Enter the extension for the file in the node output.
  * **File Name**: Enter the name for the file in the node output.
  * **MIME Type**: Enter the file's MIME type in the node output. Refer to [Common MIME types](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types){:target=_blank .external-link} for a list of file extensions and their MIME types.
  * **Put Output File in Field**: Enter the name of the field in the output data to contain the file.

  ## Write File to Disk

  Configure this operation with these parameters:

  * **File Path and Name**: Enter the destination for the file, the file's name, and the file's extension.
  * **Input Binary Field**: Enter the name of the field in the node input data that will contain the binary file.

  ### Write File to Disk options

  You can also configure this operation with these **Options**:

  This operation includes a single option, whether to **Append** data to an existing file instead of creating a new one (turned on) or to create a new file instead of appending to existing (turned off).

  ## Templates and examples

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

  ## File locations

  If you run n8n in Docker, your command runs in the n8n container and not the Docker host.

  This node looks for files relative to the n8n install path. n8n recommends using absolute file paths to prevent any errors.

properties_schema:
  [
    {
      "displayName": "Use this node to read and write files on the same computer running n8n. To handle files between different computers please use other nodes (e.g. FTP, HTTP Request, AWS).",
      "name": "info",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "read",
      "options": [
        {
          "name": "Read File(s) From Disk",
          "value": "read",
          "description": "Retrieve one or more files from the computer that runs n8n",
          "action": "Read File(s) From Disk"
        },
        {
          "name": "Write File to Disk",
          "value": "write",
          "description": "Create a binary file on the computer that runs n8n",
          "action": "Write File to Disk"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "File(s) Selector",
      "name": "fileSelector",
      "type": "string",
      "default": "",
      "description": "Specify a file's path or path pattern to read multiple files. Always use forward-slashes for path separator even on Windows.",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "read"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "File Extension",
          "name": "fileExtension",
          "type": "string",
          "default": "",
          "placeholder": "e.g. zip",
          "description": "Extension of the file in the output binary"
        },
        {
          "displayName": "File Name",
          "name": "fileName",
          "type": "string",
          "default": "",
          "placeholder": "e.g. data.zip",
          "description": "Name of the file in the output binary"
        },
        {
          "displayName": "Mime Type",
          "name": "mimeType",
          "type": "string",
          "default": "",
          "placeholder": "e.g. application/zip",
          "description": "Mime type of the file in the output binary"
        },
        {
          "displayName": "Put Output File in Field",
          "name": "dataPropertyName",
          "type": "string",
          "default": "data",
          "placeholder": "e.g. data",
          "description": "By default 'data' is used",
          "hint": "The name of the output binary field to put the file in"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "read"
          ]
        }
      }
    },
    {
      "displayName": "File Path and Name",
      "name": "fileName",
      "type": "string",
      "default": "",
      "description": "Path and name of the file that should be written. Also include the file extension.",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "write"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "dataPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "write"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Append",
          "name": "append",
          "type": "boolean",
          "default": false,
          "description": "Whether to append to an existing file. While it's commonly used with text files, it's not limited to them, however, it wouldn't be applicable for file types that have a specific structure like most binary formats."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "write"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "read",
      "name": "Read File(s) From Disk",
      "description": "Retrieve one or more files from the computer that runs n8n"
    },
    {
      "operation": "write",
      "name": "Write File to Disk",
      "description": "Create a binary file on the computer that runs n8n"
    }
  ]


node_type: nodes-base.convertToFile
package_name: n8n-nodes-base
display_name: Convert to File
description: Convert JSON data to binary data
category: input
development_style: programmatic
version: 1.1
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Convert to File
  description: Documentation for the Convert to File node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: critical
  ---

  # Convert to File

  Use the Convert to File node to take input data and output it as a file. This converts the input JSON data into a binary format.

  /// note | Extract From File
  To extract data from a file and convert it to JSON, use the [Extract from File](/integrations/builtin/core-nodes/n8n-nodes-base.extractfromfile.md) node.
  ///

  ## Operations

  * [**Convert to CSV**](#convert-to-csv)
  * [**Convert to HTML**](#convert-to-html)
  * [**Convert to ICS**](#convert-to-ics)
  * [**Convert to JSON**](#convert-to-json)
  * [**Convert to ODS**](#convert-to-ods)
  * [**Convert to RTF**](#convert-to-rtf)
  * [**Convert to Text File**](#convert-to-text-file)
  * [**Convert to XLS**](#convert-to-xls)
  * [**Convert to XLSX**](#convert-to-xlsx)
  * [**Move Base64 String to File**](#move-base64-string-to-file)

  Node parameters and options depend on the operation you select.

  ### Convert to CSV

  Configure the node for this operation with the **Put Output File in Field** parameter. Enter the name of the field in the output data to contain the file.

  #### Convert to CSV options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * If the first row of the file contains header names, turn on the **Header Row** option.

  ### Convert to HTML

  Configure the node for this operation with the **Put Output File in Field** parameter. Enter the name of the field in the output data to contain the file.

  #### Convert to HTML options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * If the first row of the file contains header names, turn on the **Header Row** option.

  ### Convert to ICS

  * **Put Output File in Field**. Enter the name of the field in the output data to contain the file.
  * **Event Title**: Enter the title for the event.
  * **Start**: Enter the date and time the event will start. All-day events ignore the time.
  * **End**: Enter the date and time the event will end. All-day events ignore the time. If unset, the node uses the start date.
  * **All Day**: Select whether the event is an all day event (turned on) or not (turned off).

  #### Convert to ICS options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **Attendees**: Use this option to add attendees to the event. For each attendee, add:
  	* **Name**
  	* **Email**
  	* **RSVP**: Select whether the attendee needs to confirm attendance (turned on) or doesn't (turned off).
  * **Busy Status**: Use this option to set the busy status for Microsoft applications like Outlook. Choose from:
  	* **Busy**
  	* **Tentative**
  * **Calendar Name**: For Apple and Microsoft calendars, enter the [calendar name](https://learn.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxcical/1da58449-b97e-46bd-b018-a1ce576f3e6d){:target=_blank .external-link} for the event.
  *  **Description**: Enter an event description.
  * **Geolocation**: Enter the **Latitude** and **Longitude** for the event's location.
  * **Location**: Enter the event's intended venue/location.
  * **Recurrence Rule**: Enter a rule to define the repeat pattern of the event (RRULE). Generate rules using the [iCalendar.org RRULE Tool](https://icalendar.org/rrule-tool.html){:target=_blank .external-link}.
  * **Organizer**: Enter the organizer's **Name** and **Email**.
  * **Sequence**: If you're sending an update for an event with the same universally unique ID (UID), enter the revision sequence number.
  * **Status**: Set the status of the event. Choose from:
  	* **Confirmed**
  	* **Cancelled**
  	* **Tentative**
  * **UID**: Enter a universally unique ID (UID) for the event. The UID should be globally unique. The node automatically generates a UID if you don't enter one.
  * **URL**: Enter a URL associated with the event.
  * **Use Workflow Timezone**: Whether to use UTC time zone (turned off) or the workflow's timezone (turned on). Set the workflow's timezone in the [Workflow Settings](/workflows/settings.md).

  ### Convert to JSON

  Choose the best output **Mode** for your needs from these options:

  * **All Items to One File**: Send all input items to a single file.
  * **Each Item to Separate File**: Create a file for every input item.

  #### Convert to JSON options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **Format**: Choose whether to format the JSON for easier reading (turned on) or not (turned off).
  * **Encoding**: Choose the character set to use to encode the data. The default is **utf8**.

  ### Convert to ODS

  Configure the node for this operation with the **Put Output File in Field** parameter. Enter the name of the field in the output data to contain the file.

  #### Convert to ODS options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **Compression**: Choose whether to compress and reduce the file's output size.
  * **Header Row**: Turn on if the first row of the file contains header names.
  * **Sheet Name**: Enter the Sheet Name to create in the spreadsheet.

  ### Convert to RTF

  Configure the node for this operation with the **Put Output File in Field** parameter. Enter the name of the field in the output data to contain the file.

  #### Convert to RFT options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * If the first row of the file contains header names, turn on the **Header Row** option.

  ### Convert to Text File

  Enter the name of the **Text Input Field** that contains a string to convert to a file. Use dot-notation for deep fields, for example `level1.level2.currentKey`.

  #### Convert to Text File options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **Encoding**: Choose the character set to use to encode the data. The default is **utf8**.

  ### Convert to XLS

  Configure the node for this operation with the **Put Output File in Field** parameter. Enter the name of the field in the output data to contain the file.

  #### Convert to XLS options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **Header Row**: Turn on if the first row of the file contains header names.
  * **Sheet Name**: Enter the Sheet Name to create in the spreadsheet.

  ### Convert to XLSX

  Configure the node for this operation with the **Put Output File in Field** parameter. Enter the name of the field in the output data to contain the file.

  #### Convert to XLSX options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **Compression**: Choose whether to compress and reduce the file's output size.
  * **Header Row**: Turn on if the first row of the file contains header names.
  * **Sheet Name**: Enter the Sheet Name to create in the spreadsheet.

  ### Move Base64 String to File

  Enter the name of the **Base64 Input Field** that contains the Base64 string to convert to a file. Use dot-notation for deep fields, for example `level1.level2.currentKey`.

  #### Move Base64 String to File options

  You can also configure this operation with these **Options**:

  * **File Name**: Enter the file name for the generated output file.
  * **MIME Type**: Enter the MIME type of the output file. Refer to [Common MIME types](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types){:target=_blank .external-link} for a list of common MIME types and the file extensions they relate to.

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "csv",
      "options": [
        {
          "name": "Convert to CSV",
          "value": "csv",
          "action": "Convert to CSV",
          "description": "Transform input data into a CSV file"
        },
        {
          "name": "Convert to HTML",
          "value": "html",
          "action": "Convert to HTML",
          "description": "Transform input data into a table in an HTML file"
        },
        {
          "name": "Convert to ICS",
          "value": "iCal",
          "action": "Convert to ICS",
          "description": "Converts each input item to an ICS event file"
        },
        {
          "name": "Convert to JSON",
          "value": "toJson",
          "action": "Convert to JSON",
          "description": "Transform input data into a single or multiple JSON files"
        },
        {
          "name": "Convert to ODS",
          "value": "ods",
          "action": "Convert to ODS",
          "description": "Transform input data into an ODS file"
        },
        {
          "name": "Convert to RTF",
          "value": "rtf",
          "action": "Convert to RTF",
          "description": "Transform input data into a table in an RTF file"
        },
        {
          "name": "Convert to Text File",
          "value": "toText",
          "action": "Convert to text file",
          "description": "Transform input data string into a file"
        },
        {
          "name": "Convert to XLS",
          "value": "xls",
          "action": "Convert to XLS",
          "description": "Transform input data into an Excel file"
        },
        {
          "name": "Convert to XLSX",
          "value": "xlsx",
          "action": "Convert to XLSX",
          "description": "Transform input data into an Excel file"
        },
        {
          "name": "Move Base64 String to File",
          "value": "toBinary",
          "action": "Move base64 string to file",
          "description": "Convert a base64-encoded string into its original file format"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "csv",
            "html",
            "rtf",
            "ods",
            "xls",
            "xlsx"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Compression",
          "name": "compression",
          "type": "boolean",
          "displayOptions": {
            "show": {
              "/operation": [
                "xlsx",
                "ods"
              ]
            }
          },
          "default": false,
          "description": "Whether to reduce the output file size"
        },
        {
          "displayName": "Delimiter",
          "name": "delimiter",
          "type": "string",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "default": ",",
          "description": "The character to use to separate fields"
        },
        {
          "displayName": "File Name",
          "name": "fileName",
          "type": "string",
          "default": "",
          "description": "Name of the output file"
        },
        {
          "displayName": "Header Row",
          "name": "headerRow",
          "type": "boolean",
          "default": true,
          "description": "Whether the first row of the file contains the header names"
        },
        {
          "displayName": "Sheet Name",
          "name": "sheetName",
          "type": "string",
          "displayOptions": {
            "show": {
              "/operation": [
                "ods",
                "xls",
                "xlsx"
              ]
            }
          },
          "default": "Sheet",
          "description": "Name of the sheet to create in the spreadsheet",
          "placeholder": "e.g. mySheet"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "csv",
            "html",
            "rtf",
            "ods",
            "xls",
            "xlsx"
          ]
        }
      }
    },
    {
      "displayName": "Base64 Input Field",
      "name": "sourceProperty",
      "type": "string",
      "default": "",
      "description": "The name of the input field that contains the base64 string to convert to a file. Use dot-notation for deep fields (e.g. 'level1.level2.currentKey').",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "toBinary"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "toBinary"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Add Byte Order Mark (BOM)",
          "description": "Whether to add special marker at the start of your text file. This marker helps some programs understand how to read the file correctly.",
          "name": "addBOM",
          "displayOptions": {
            "show": {
              "encoding": [
                "utf8",
                "cesu8",
                "ucs2"
              ]
            }
          },
          "type": "boolean",
          "default": false
        },
        {
          "displayName": "Data Is Base64",
          "name": "dataIsBase64",
          "type": "boolean",
          "default": true,
          "description": "Whether the data is already base64 encoded",
          "displayOptions": {
            "show": {
              "@version": [
                1
              ]
            }
          }
        },
        {
          "displayName": "Encoding",
          "name": "encoding",
          "type": "options",
          "options": [
            {
              "name": "armscii8",
              "value": "armscii8"
            },
            {
              "name": "ascii",
              "value": "ascii"
            },
            {
              "name": "base64",
              "value": "base64"
            },
            {
              "name": "big5hkscs",
              "value": "big5hkscs"
            },
            {
              "name": "binary",
              "value": "binary"
            },
            {
              "name": "cesu8",
              "value": "cesu8"
            },
            {
              "name": "cp1046",
              "value": "cp1046"
            },
            {
              "name": "cp1124",
              "value": "cp1124"
            },
            {
              "name": "cp1125",
              "value": "cp1125"
            },
            {
              "name": "cp1129",
              "value": "cp1129"
            },
            {
              "name": "cp1133",
              "value": "cp1133"
            },
            {
              "name": "cp1161",
              "value": "cp1161"
            },
            {
              "name": "cp1162",
              "value": "cp1162"
            },
            {
              "name": "cp1163",
              "value": "cp1163"
            },
            {
              "name": "cp437",
              "value": "cp437"
            },
            {
              "name": "cp720",
              "value": "cp720"
            },
            {
              "name": "cp737",
              "value": "cp737"
            },
            {
              "name": "cp775",
              "value": "cp775"
            },
            {
              "name": "cp808",
              "value": "cp808"
            },
            {
              "name": "cp850",
              "value": "cp850"
            },
            {
              "name": "cp852",
              "value": "cp852"
            },
            {
              "name": "cp855",
              "value": "cp855"
            },
            {
              "name": "cp856",
              "value": "cp856"
            },
            {
              "name": "cp857",
              "value": "cp857"
            },
            {
              "name": "cp858",
              "value": "cp858"
            },
            {
              "name": "cp860",
              "value": "cp860"
            },
            {
              "name": "cp861",
              "value": "cp861"
            },
            {
              "name": "cp862",
              "value": "cp862"
            },
            {
              "name": "cp863",
              "value": "cp863"
            },
            {
              "name": "cp864",
              "value": "cp864"
            },
            {
              "name": "cp865",
              "value": "cp865"
            },
            {
              "name": "cp866",
              "value": "cp866"
            },
            {
              "name": "cp869",
              "value": "cp869"
            },
            {
              "name": "cp922",
              "value": "cp922"
            },
            {
              "name": "cp936",
              "value": "cp936"
            },
            {
              "name": "cp949",
              "value": "cp949"
            },
            {
              "name": "cp950",
              "value": "cp950"
            },
            {
              "name": "eucjp",
              "value": "eucjp"
            },
            {
              "name": "gb18030",
              "value": "gb18030"
            },
            {
              "name": "gbk",
              "value": "gbk"
            },
            {
              "name": "georgianacademy",
              "value": "georgianacademy"
            },
            {
              "name": "georgianps",
              "value": "georgianps"
            },
            {
              "name": "hex",
              "value": "hex"
            },
            {
              "name": "hproman8",
              "value": "hproman8"
            },
            {
              "name": "iso646cn",
              "value": "iso646cn"
            },
            {
              "name": "iso646jp",
              "value": "iso646jp"
            },
            {
              "name": "iso88591",
              "value": "iso88591"
            },
            {
              "name": "iso885910",
              "value": "iso885910"
            },
            {
              "name": "iso885911",
              "value": "iso885911"
            },
            {
              "name": "iso885913",
              "value": "iso885913"
            },
            {
              "name": "iso885914",
              "value": "iso885914"
            },
            {
              "name": "iso885915",
              "value": "iso885915"
            },
            {
              "name": "iso885916",
              "value": "iso885916"
            },
            {
              "name": "iso88592",
              "value": "iso88592"
            },
            {
              "name": "iso88593",
              "value": "iso88593"
            },
            {
              "name": "iso88594",
              "value": "iso88594"
            },
            {
              "name": "iso88595",
              "value": "iso88595"
            },
            {
              "name": "iso88596",
              "value": "iso88596"
            },
            {
              "name": "iso88597",
              "value": "iso88597"
            },
            {
              "name": "iso88598",
              "value": "iso88598"
            },
            {
              "name": "iso88599",
              "value": "iso88599"
            },
            {
              "name": "koi8r",
              "value": "koi8r"
            },
            {
              "name": "koi8ru",
              "value": "koi8ru"
            },
            {
              "name": "koi8t",
              "value": "koi8t"
            },
            {
              "name": "koi8u",
              "value": "koi8u"
            },
            {
              "name": "maccenteuro",
              "value": "maccenteuro"
            },
            {
              "name": "maccroatian",
              "value": "maccroatian"
            },
            {
              "name": "maccyrillic",
              "value": "maccyrillic"
            },
            {
              "name": "macgreek",
              "value": "macgreek"
            },
            {
              "name": "maciceland",
              "value": "maciceland"
            },
            {
              "name": "macintosh",
              "value": "macintosh"
            },
            {
              "name": "macroman",
              "value": "macroman"
            },
            {
              "name": "macromania",
              "value": "macromania"
            },
            {
              "name": "macthai",
              "value": "macthai"
            },
            {
              "name": "macturkish",
              "value": "macturkish"
            },
            {
              "name": "macukraine",
              "value": "macukraine"
            },
            {
              "name": "mik",
              "value": "mik"
            },
            {
              "name": "pt154",
              "value": "pt154"
            },
            {
              "name": "rk1048",
              "value": "rk1048"
            },
            {
              "name": "shiftjis",
              "value": "shiftjis"
            },
            {
              "name": "tcvn",
              "value": "tcvn"
            },
            {
              "name": "tis620",
              "value": "tis620"
            },
            {
              "name": "ucs2",
              "value": "ucs2"
            },
            {
              "name": "utf16",
              "value": "utf16"
            },
            {
              "name": "utf16be",
              "value": "utf16be"
            },
            {
              "name": "utf32",
              "value": "utf32"
            },
            {
              "name": "utf32be",
              "value": "utf32be"
            },
            {
              "name": "utf32le",
              "value": "utf32le"
            },
            {
              "name": "utf7",
              "value": "utf7"
            },
            {
              "name": "utf7imap",
              "value": "utf7imap"
            },
            {
              "name": "utf8",
              "value": "utf8"
            },
            {
              "name": "viscii",
              "value": "viscii"
            },
            {
              "name": "windows1250",
              "value": "windows1250"
            },
            {
              "name": "windows1251",
              "value": "windows1251"
            },
            {
              "name": "windows1252",
              "value": "windows1252"
            },
            {
              "name": "windows1253",
              "value": "windows1253"
            },
            {
              "name": "windows1254",
              "value": "windows1254"
            },
            {
              "name": "windows1255",
              "value": "windows1255"
            },
            {
              "name": "windows1256",
              "value": "windows1256"
            },
            {
              "name": "windows1257",
              "value": "windows1257"
            },
            {
              "name": "windows1258",
              "value": "windows1258"
            },
            {
              "name": "windows874",
              "value": "windows874"
            }
          ],
          "default": "utf8",
          "description": "Choose the character set to use to encode the data",
          "displayOptions": {
            "hide": {
              "dataIsBase64": [
                true
              ],
              "@version": [
                {
                  "_cnd": {
                    "gt": 1
                  }
                }
              ]
            }
          }
        },
        {
          "displayName": "File Name",
          "name": "fileName",
          "type": "string",
          "default": "",
          "placeholder": "e.g. myFile",
          "description": "Name of the output file"
        },
        {
          "displayName": "MIME Type",
          "name": "mimeType",
          "type": "string",
          "default": "",
          "placeholder": "e.g text/plain",
          "description": "The MIME type of the output file. <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types\" target=\"_blank\">Common MIME types</a>."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "toBinary"
          ]
        }
      }
    },
    {
      "displayName": "Text Input Field",
      "name": "sourceProperty",
      "type": "string",
      "default": "",
      "description": "The name of the input field that contains a string to convert to a file. Use dot-notation for deep fields (e.g. 'level1.level2.currentKey').",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "toText"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "toText"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Add Byte Order Mark (BOM)",
          "description": "Whether to add special marker at the start of your text file. This marker helps some programs understand how to read the file correctly.",
          "name": "addBOM",
          "displayOptions": {
            "show": {
              "encoding": [
                "utf8",
                "cesu8",
                "ucs2"
              ]
            }
          },
          "type": "boolean",
          "default": false
        },
        {
          "displayName": "Encoding",
          "name": "encoding",
          "type": "options",
          "options": [
            {
              "name": "armscii8",
              "value": "armscii8"
            },
            {
              "name": "ascii",
              "value": "ascii"
            },
            {
              "name": "base64",
              "value": "base64"
            },
            {
              "name": "big5hkscs",
              "value": "big5hkscs"
            },
            {
              "name": "binary",
              "value": "binary"
            },
            {
              "name": "cesu8",
              "value": "cesu8"
            },
            {
              "name": "cp1046",
              "value": "cp1046"
            },
            {
              "name": "cp1124",
              "value": "cp1124"
            },
            {
              "name": "cp1125",
              "value": "cp1125"
            },
            {
              "name": "cp1129",
              "value": "cp1129"
            },
            {
              "name": "cp1133",
              "value": "cp1133"
            },
            {
              "name": "cp1161",
              "value": "cp1161"
            },
            {
              "name": "cp1162",
              "value": "cp1162"
            },
            {
              "name": "cp1163",
              "value": "cp1163"
            },
            {
              "name": "cp437",
              "value": "cp437"
            },
            {
              "name": "cp720",
              "value": "cp720"
            },
            {
              "name": "cp737",
              "value": "cp737"
            },
            {
              "name": "cp775",
              "value": "cp775"
            },
            {
              "name": "cp808",
              "value": "cp808"
            },
            {
              "name": "cp850",
              "value": "cp850"
            },
            {
              "name": "cp852",
              "value": "cp852"
            },
            {
              "name": "cp855",
              "value": "cp855"
            },
            {
              "name": "cp856",
              "value": "cp856"
            },
            {
              "name": "cp857",
              "value": "cp857"
            },
            {
              "name": "cp858",
              "value": "cp858"
            },
            {
              "name": "cp860",
              "value": "cp860"
            },
            {
              "name": "cp861",
              "value": "cp861"
            },
            {
              "name": "cp862",
              "value": "cp862"
            },
            {
              "name": "cp863",
              "value": "cp863"
            },
            {
              "name": "cp864",
              "value": "cp864"
            },
            {
              "name": "cp865",
              "value": "cp865"
            },
            {
              "name": "cp866",
              "value": "cp866"
            },
            {
              "name": "cp869",
              "value": "cp869"
            },
            {
              "name": "cp922",
              "value": "cp922"
            },
            {
              "name": "cp936",
              "value": "cp936"
            },
            {
              "name": "cp949",
              "value": "cp949"
            },
            {
              "name": "cp950",
              "value": "cp950"
            },
            {
              "name": "eucjp",
              "value": "eucjp"
            },
            {
              "name": "gb18030",
              "value": "gb18030"
            },
            {
              "name": "gbk",
              "value": "gbk"
            },
            {
              "name": "georgianacademy",
              "value": "georgianacademy"
            },
            {
              "name": "georgianps",
              "value": "georgianps"
            },
            {
              "name": "hex",
              "value": "hex"
            },
            {
              "name": "hproman8",
              "value": "hproman8"
            },
            {
              "name": "iso646cn",
              "value": "iso646cn"
            },
            {
              "name": "iso646jp",
              "value": "iso646jp"
            },
            {
              "name": "iso88591",
              "value": "iso88591"
            },
            {
              "name": "iso885910",
              "value": "iso885910"
            },
            {
              "name": "iso885911",
              "value": "iso885911"
            },
            {
              "name": "iso885913",
              "value": "iso885913"
            },
            {
              "name": "iso885914",
              "value": "iso885914"
            },
            {
              "name": "iso885915",
              "value": "iso885915"
            },
            {
              "name": "iso885916",
              "value": "iso885916"
            },
            {
              "name": "iso88592",
              "value": "iso88592"
            },
            {
              "name": "iso88593",
              "value": "iso88593"
            },
            {
              "name": "iso88594",
              "value": "iso88594"
            },
            {
              "name": "iso88595",
              "value": "iso88595"
            },
            {
              "name": "iso88596",
              "value": "iso88596"
            },
            {
              "name": "iso88597",
              "value": "iso88597"
            },
            {
              "name": "iso88598",
              "value": "iso88598"
            },
            {
              "name": "iso88599",
              "value": "iso88599"
            },
            {
              "name": "koi8r",
              "value": "koi8r"
            },
            {
              "name": "koi8ru",
              "value": "koi8ru"
            },
            {
              "name": "koi8t",
              "value": "koi8t"
            },
            {
              "name": "koi8u",
              "value": "koi8u"
            },
            {
              "name": "maccenteuro",
              "value": "maccenteuro"
            },
            {
              "name": "maccroatian",
              "value": "maccroatian"
            },
            {
              "name": "maccyrillic",
              "value": "maccyrillic"
            },
            {
              "name": "macgreek",
              "value": "macgreek"
            },
            {
              "name": "maciceland",
              "value": "maciceland"
            },
            {
              "name": "macintosh",
              "value": "macintosh"
            },
            {
              "name": "macroman",
              "value": "macroman"
            },
            {
              "name": "macromania",
              "value": "macromania"
            },
            {
              "name": "macthai",
              "value": "macthai"
            },
            {
              "name": "macturkish",
              "value": "macturkish"
            },
            {
              "name": "macukraine",
              "value": "macukraine"
            },
            {
              "name": "mik",
              "value": "mik"
            },
            {
              "name": "pt154",
              "value": "pt154"
            },
            {
              "name": "rk1048",
              "value": "rk1048"
            },
            {
              "name": "shiftjis",
              "value": "shiftjis"
            },
            {
              "name": "tcvn",
              "value": "tcvn"
            },
            {
              "name": "tis620",
              "value": "tis620"
            },
            {
              "name": "ucs2",
              "value": "ucs2"
            },
            {
              "name": "utf16",
              "value": "utf16"
            },
            {
              "name": "utf16be",
              "value": "utf16be"
            },
            {
              "name": "utf32",
              "value": "utf32"
            },
            {
              "name": "utf32be",
              "value": "utf32be"
            },
            {
              "name": "utf32le",
              "value": "utf32le"
            },
            {
              "name": "utf7",
              "value": "utf7"
            },
            {
              "name": "utf7imap",
              "value": "utf7imap"
            },
            {
              "name": "utf8",
              "value": "utf8"
            },
            {
              "name": "viscii",
              "value": "viscii"
            },
            {
              "name": "windows1250",
              "value": "windows1250"
            },
            {
              "name": "windows1251",
              "value": "windows1251"
            },
            {
              "name": "windows1252",
              "value": "windows1252"
            },
            {
              "name": "windows1253",
              "value": "windows1253"
            },
            {
              "name": "windows1254",
              "value": "windows1254"
            },
            {
              "name": "windows1255",
              "value": "windows1255"
            },
            {
              "name": "windows1256",
              "value": "windows1256"
            },
            {
              "name": "windows1257",
              "value": "windows1257"
            },
            {
              "name": "windows1258",
              "value": "windows1258"
            },
            {
              "name": "windows874",
              "value": "windows874"
            }
          ],
          "default": "utf8",
          "description": "Choose the character set to use to encode the data"
        },
        {
          "displayName": "File Name",
          "name": "fileName",
          "type": "string",
          "default": "",
          "placeholder": "e.g. myFile",
          "description": "Name of the output file"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "toText"
          ]
        }
      }
    },
    {
      "displayName": "Mode",
      "name": "mode",
      "type": "options",
      "default": "once",
      "options": [
        {
          "name": "All Items to One File",
          "value": "once"
        },
        {
          "name": "Each Item to Separate File",
          "value": "each"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "toJson"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "toJson"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Add Byte Order Mark (BOM)",
          "name": "addBOM",
          "type": "boolean",
          "default": false,
          "description": "Whether to add special marker at the start of your text file. This marker helps some programs understand how to read the file correctly.",
          "displayOptions": {
            "show": {
              "encoding": [
                "utf8",
                "cesu8",
                "ucs2"
              ]
            }
          }
        },
        {
          "displayName": "Format",
          "name": "format",
          "type": "boolean",
          "default": false,
          "description": "Whether to format the JSON data for easier reading"
        },
        {
          "displayName": "Encoding",
          "name": "encoding",
          "type": "options",
          "options": [
            {
              "name": "armscii8",
              "value": "armscii8"
            },
            {
              "name": "ascii",
              "value": "ascii"
            },
            {
              "name": "base64",
              "value": "base64"
            },
            {
              "name": "big5hkscs",
              "value": "big5hkscs"
            },
            {
              "name": "binary",
              "value": "binary"
            },
            {
              "name": "cesu8",
              "value": "cesu8"
            },
            {
              "name": "cp1046",
              "value": "cp1046"
            },
            {
              "name": "cp1124",
              "value": "cp1124"
            },
            {
              "name": "cp1125",
              "value": "cp1125"
            },
            {
              "name": "cp1129",
              "value": "cp1129"
            },
            {
              "name": "cp1133",
              "value": "cp1133"
            },
            {
              "name": "cp1161",
              "value": "cp1161"
            },
            {
              "name": "cp1162",
              "value": "cp1162"
            },
            {
              "name": "cp1163",
              "value": "cp1163"
            },
            {
              "name": "cp437",
              "value": "cp437"
            },
            {
              "name": "cp720",
              "value": "cp720"
            },
            {
              "name": "cp737",
              "value": "cp737"
            },
            {
              "name": "cp775",
              "value": "cp775"
            },
            {
              "name": "cp808",
              "value": "cp808"
            },
            {
              "name": "cp850",
              "value": "cp850"
            },
            {
              "name": "cp852",
              "value": "cp852"
            },
            {
              "name": "cp855",
              "value": "cp855"
            },
            {
              "name": "cp856",
              "value": "cp856"
            },
            {
              "name": "cp857",
              "value": "cp857"
            },
            {
              "name": "cp858",
              "value": "cp858"
            },
            {
              "name": "cp860",
              "value": "cp860"
            },
            {
              "name": "cp861",
              "value": "cp861"
            },
            {
              "name": "cp862",
              "value": "cp862"
            },
            {
              "name": "cp863",
              "value": "cp863"
            },
            {
              "name": "cp864",
              "value": "cp864"
            },
            {
              "name": "cp865",
              "value": "cp865"
            },
            {
              "name": "cp866",
              "value": "cp866"
            },
            {
              "name": "cp869",
              "value": "cp869"
            },
            {
              "name": "cp922",
              "value": "cp922"
            },
            {
              "name": "cp936",
              "value": "cp936"
            },
            {
              "name": "cp949",
              "value": "cp949"
            },
            {
              "name": "cp950",
              "value": "cp950"
            },
            {
              "name": "eucjp",
              "value": "eucjp"
            },
            {
              "name": "gb18030",
              "value": "gb18030"
            },
            {
              "name": "gbk",
              "value": "gbk"
            },
            {
              "name": "georgianacademy",
              "value": "georgianacademy"
            },
            {
              "name": "georgianps",
              "value": "georgianps"
            },
            {
              "name": "hex",
              "value": "hex"
            },
            {
              "name": "hproman8",
              "value": "hproman8"
            },
            {
              "name": "iso646cn",
              "value": "iso646cn"
            },
            {
              "name": "iso646jp",
              "value": "iso646jp"
            },
            {
              "name": "iso88591",
              "value": "iso88591"
            },
            {
              "name": "iso885910",
              "value": "iso885910"
            },
            {
              "name": "iso885911",
              "value": "iso885911"
            },
            {
              "name": "iso885913",
              "value": "iso885913"
            },
            {
              "name": "iso885914",
              "value": "iso885914"
            },
            {
              "name": "iso885915",
              "value": "iso885915"
            },
            {
              "name": "iso885916",
              "value": "iso885916"
            },
            {
              "name": "iso88592",
              "value": "iso88592"
            },
            {
              "name": "iso88593",
              "value": "iso88593"
            },
            {
              "name": "iso88594",
              "value": "iso88594"
            },
            {
              "name": "iso88595",
              "value": "iso88595"
            },
            {
              "name": "iso88596",
              "value": "iso88596"
            },
            {
              "name": "iso88597",
              "value": "iso88597"
            },
            {
              "name": "iso88598",
              "value": "iso88598"
            },
            {
              "name": "iso88599",
              "value": "iso88599"
            },
            {
              "name": "koi8r",
              "value": "koi8r"
            },
            {
              "name": "koi8ru",
              "value": "koi8ru"
            },
            {
              "name": "koi8t",
              "value": "koi8t"
            },
            {
              "name": "koi8u",
              "value": "koi8u"
            },
            {
              "name": "maccenteuro",
              "value": "maccenteuro"
            },
            {
              "name": "maccroatian",
              "value": "maccroatian"
            },
            {
              "name": "maccyrillic",
              "value": "maccyrillic"
            },
            {
              "name": "macgreek",
              "value": "macgreek"
            },
            {
              "name": "maciceland",
              "value": "maciceland"
            },
            {
              "name": "macintosh",
              "value": "macintosh"
            },
            {
              "name": "macroman",
              "value": "macroman"
            },
            {
              "name": "macromania",
              "value": "macromania"
            },
            {
              "name": "macthai",
              "value": "macthai"
            },
            {
              "name": "macturkish",
              "value": "macturkish"
            },
            {
              "name": "macukraine",
              "value": "macukraine"
            },
            {
              "name": "mik",
              "value": "mik"
            },
            {
              "name": "pt154",
              "value": "pt154"
            },
            {
              "name": "rk1048",
              "value": "rk1048"
            },
            {
              "name": "shiftjis",
              "value": "shiftjis"
            },
            {
              "name": "tcvn",
              "value": "tcvn"
            },
            {
              "name": "tis620",
              "value": "tis620"
            },
            {
              "name": "ucs2",
              "value": "ucs2"
            },
            {
              "name": "utf16",
              "value": "utf16"
            },
            {
              "name": "utf16be",
              "value": "utf16be"
            },
            {
              "name": "utf32",
              "value": "utf32"
            },
            {
              "name": "utf32be",
              "value": "utf32be"
            },
            {
              "name": "utf32le",
              "value": "utf32le"
            },
            {
              "name": "utf7",
              "value": "utf7"
            },
            {
              "name": "utf7imap",
              "value": "utf7imap"
            },
            {
              "name": "utf8",
              "value": "utf8"
            },
            {
              "name": "viscii",
              "value": "viscii"
            },
            {
              "name": "windows1250",
              "value": "windows1250"
            },
            {
              "name": "windows1251",
              "value": "windows1251"
            },
            {
              "name": "windows1252",
              "value": "windows1252"
            },
            {
              "name": "windows1253",
              "value": "windows1253"
            },
            {
              "name": "windows1254",
              "value": "windows1254"
            },
            {
              "name": "windows1255",
              "value": "windows1255"
            },
            {
              "name": "windows1256",
              "value": "windows1256"
            },
            {
              "name": "windows1257",
              "value": "windows1257"
            },
            {
              "name": "windows1258",
              "value": "windows1258"
            },
            {
              "name": "windows874",
              "value": "windows874"
            }
          ],
          "default": "utf8",
          "description": "Choose the character set to use to encode the data"
        },
        {
          "displayName": "File Name",
          "name": "fileName",
          "type": "string",
          "default": "",
          "placeholder": "e.g. myFile.json",
          "description": "Name of the output file"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "toJson"
          ]
        }
      }
    },
    {
      "displayName": "Event Title",
      "name": "title",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "operation": [
            "iCal"
          ]
        }
      }
    },
    {
      "displayName": "Start",
      "name": "start",
      "type": "dateTime",
      "default": "",
      "description": "Date and time at which the event begins. (For all-day events, the time will be ignored.).",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "iCal"
          ]
        }
      }
    },
    {
      "displayName": "End",
      "name": "end",
      "type": "dateTime",
      "default": "",
      "description": "Date and time at which the event ends. (For all-day events, the time will be ignored.).",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "iCal"
          ]
        }
      }
    },
    {
      "displayName": "All Day",
      "name": "allDay",
      "type": "boolean",
      "default": false,
      "description": "Whether the event lasts all day or not",
      "displayOptions": {
        "show": {
          "operation": [
            "iCal"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "description": "The field that your iCalendar file will be available under in the output",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "iCal"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Attendees",
          "name": "attendeesUi",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Attendee",
          "default": {},
          "options": [
            {
              "displayName": "Attendees",
              "name": "attendeeValues",
              "values": [
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "required": true,
                  "default": ""
                },
                {
                  "displayName": "Email",
                  "name": "email",
                  "type": "string",
                  "placeholder": "e.g. name@email.com",
                  "required": true,
                  "default": ""
                },
                {
                  "displayName": "RSVP",
                  "name": "rsvp",
                  "type": "boolean",
                  "default": false,
                  "description": "Whether the attendee has to confirm attendance or not"
                }
              ]
            }
          ]
        },
        {
          "displayName": "Busy Status",
          "name": "busyStatus",
          "type": "options",
          "options": [
            {
              "name": "Busy",
              "value": "BUSY"
            },
            {
              "name": "Tentative",
              "value": "TENTATIVE"
            }
          ],
          "default": "",
          "description": "Used to specify busy status for Microsoft applications, like Outlook"
        },
        {
          "displayName": "Calendar Name",
          "name": "calName",
          "type": "string",
          "default": "",
          "description": "Specifies the calendar (not event) name. Used by Apple iCal and Microsoft Outlook. <a href=\"https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxcical/1da58449-b97e-46bd-b018-a1ce576f3e6d\">More info</a>."
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "File Name",
          "name": "fileName",
          "type": "string",
          "default": "",
          "placeholder": "e.g. event.ics",
          "description": "The name of the file to be generated. Default name is event.ics."
        },
        {
          "displayName": "Geolocation",
          "name": "geolocationUi",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": false
          },
          "placeholder": "Add Geolocation",
          "default": {},
          "options": [
            {
              "displayName": "Geolocation",
              "name": "geolocationValues",
              "values": [
                {
                  "displayName": "Latitude",
                  "name": "lat",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Longitude",
                  "name": "lon",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        },
        {
          "displayName": "Location",
          "name": "location",
          "type": "string",
          "default": "",
          "description": "The intended venue"
        },
        {
          "displayName": "Recurrence Rule",
          "name": "recurrenceRule",
          "type": "string",
          "default": "",
          "description": "A rule to define the repeat pattern of the event (RRULE). (<a href=\"https://icalendar.org/rrule-tool.html\">Rule generator</a>)."
        },
        {
          "displayName": "Organizer",
          "name": "organizerUi",
          "type": "fixedCollection",
          "typeOptions": {
            "multipleValues": false
          },
          "placeholder": "Add Organizer",
          "default": {},
          "options": [
            {
              "displayName": "Organizer",
              "name": "organizerValues",
              "values": [
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": "",
                  "required": true
                },
                {
                  "displayName": "Email",
                  "name": "email",
                  "type": "string",
                  "placeholder": "e.g. name@email.com",
                  "default": "",
                  "required": true
                }
              ]
            }
          ]
        },
        {
          "displayName": "Sequence",
          "name": "sequence",
          "type": "number",
          "default": 0,
          "description": "When sending an update for an event (with the same uid), defines the revision sequence number"
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "options": [
            {
              "name": "Confirmed",
              "value": "CONFIRMED"
            },
            {
              "name": "Cancelled",
              "value": "CANCELLED"
            },
            {
              "name": "Tentative",
              "value": "TENTATIVE"
            }
          ],
          "default": "CONFIRMED"
        },
        {
          "displayName": "UID",
          "name": "uid",
          "type": "string",
          "default": "",
          "description": "Universally unique ID for the event (will be auto-generated if not specified here). Should be globally unique."
        },
        {
          "displayName": "URL",
          "name": "url",
          "type": "string",
          "default": "",
          "description": "URL associated with event"
        },
        {
          "displayName": "Use Workflow Timezone",
          "name": "useWorkflowTimezone",
          "type": "boolean",
          "default": false,
          "description": "Whether to use the workflow timezone set in node's settings rather than UTC"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "iCal"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "csv",
      "name": "Convert to CSV",
      "description": "Transform input data into a CSV file"
    },
    {
      "operation": "html",
      "name": "Convert to HTML",
      "description": "Transform input data into a table in an HTML file"
    },
    {
      "operation": "iCal",
      "name": "Convert to ICS",
      "description": "Converts each input item to an ICS event file"
    },
    {
      "operation": "toJson",
      "name": "Convert to JSON",
      "description": "Transform input data into a single or multiple JSON files"
    },
    {
      "operation": "ods",
      "name": "Convert to ODS",
      "description": "Transform input data into an ODS file"
    },
    {
      "operation": "rtf",
      "name": "Convert to RTF",
      "description": "Transform input data into a table in an RTF file"
    },
    {
      "operation": "toText",
      "name": "Convert to Text File",
      "description": "Transform input data string into a file"
    },
    {
      "operation": "xls",
      "name": "Convert to XLS",
      "description": "Transform input data into an Excel file"
    },
    {
      "operation": "xlsx",
      "name": "Convert to XLSX",
      "description": "Transform input data into an Excel file"
    },
    {
      "operation": "toBinary",
      "name": "Move Base64 String to File",
      "description": "Convert a base64-encoded string into its original file format"
    }
  ]


node_type: nodes-base.extractFromFile
package_name: n8n-nodes-base
display_name: Extract from File
description: Convert binary data to JSON
category: input
development_style: programmatic
version: 1
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Extract From File
  description: Documentation for the Extract From File node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: high
  ---

  # Extract From File

  A common pattern in n8n workflows is to receive a file, either from and [HTTP Request node][] (for files you are fetching from a website), a [Webhook Node][] (for files which are sent to your workflow from elsewhere), or from a local source. Data obtained in this way is often in a binary format, for example a spreadsheet or PDF.

  The Extract From File node extracts data from a binary format file and converts it to JSON, which can then be easily manipulated by the rest of your workflow. For converting JSON back into a binary file type, please see the [Convert to File](/integrations/builtin/core-nodes/n8n-nodes-base.converttofile.md) node.

  ## Operations

  Use the **Operations** drop-down to select the format of the source file to extract data from.

  - **Extract From CSV**: The "Comma Separated Values" file type is commonly used for tabulated data.
  - **Extract From HTML**: Extract fields from standard web page HTML format files.
  - **Extract From JSON**: Extract JSON data from a binary file.
  - **Extract From ICS**: Extract fields from iCalendar format files.
  - **Extract From ODS**: Extract fields from ODS spreadsheet files.
  - **Extract From PDF**: Extract fields from Portable Document Format files.
  - **Extract From RTF**: Extract fields from Rich Text Format files.
  - **Extract From Text File**: Extract fields from a standard text file format.
  - **Extract From XLS**: Extract fields from a Microsoft Excel file (older format).
  - **Extract From XLSX**: Extract fields from a Microsoft Excel file.
  - **Move File to Base64 String**: Converts binary data to a text-friendly [base64][] format.

  ## Example workflow

  In this example, a Webhook node is used to trigger the workflow. When a CSV file is sent to the webhook address, the file data is output and received by the Extract From File node.

  [[ workflowDemo("file:///integrations/builtin/core-nodes/n8n-nodes-base.extractfromfile/webhook-example.json") ]]

  Set to operate as 'Extract from CSV', the node then outputs the data as a series of JSON 'row' objects:

  ```
  {
    "row": {
    "0": "apple",
    "1": "1",
    "2": "2",
    "3": "3"
    }
    ...
  ```

  /// tip | Receiving files with a webhook
  Select the Webhook Node's **Add Options** button and select **Raw body**, then enable that setting to get the node to output the binary file that the subsequent node is expecting.
  ///

  ## Node parameters

  ### Input Binary Field

  Enter the name of the field from the node input data that contains the binary file. The default is 'data'.

  ### Destination Output Field

  Enter the name of the field in the node output that will contain the extracted data.

  This parameter is only available for these operations:

  - Extract From JSON
  - Extract From ICS
  - Extract From Text File
  - Move File to Base64 String

  ## Templates and examples

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

  [HTTP Request Node]: /integrations/builtin/core-nodes/n8n-nodes-base.httprequest/index.md
  [Webhook Node]: /integrations/builtin/core-nodes/n8n-nodes-base.webhook/index.md
  [base64]: https://datatracker.ietf.org/doc/html/rfc4648#section-4

properties_schema:
  [
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "csv",
      "options": [
        {
          "name": "Extract From CSV",
          "value": "csv",
          "action": "Extract from CSV",
          "description": "Transform a CSV file into output items"
        },
        {
          "name": "Extract From HTML",
          "value": "html",
          "action": "Extract from HTML",
          "description": "Transform a table in an HTML file into output items"
        },
        {
          "name": "Extract From ICS",
          "value": "fromIcs",
          "action": "Extract from ICS",
          "description": "Transform a ICS file into output items"
        },
        {
          "name": "Extract From JSON",
          "value": "fromJson",
          "action": "Extract from JSON",
          "description": "Transform a JSON file into output items"
        },
        {
          "name": "Extract From ODS",
          "value": "ods",
          "action": "Extract from ODS",
          "description": "Transform an ODS file into output items"
        },
        {
          "name": "Extract From PDF",
          "value": "pdf",
          "action": "Extract from PDF",
          "description": "Extracts the content and metadata from a PDF file"
        },
        {
          "name": "Extract From RTF",
          "value": "rtf",
          "action": "Extract from RTF",
          "description": "Transform a table in an RTF file into output items"
        },
        {
          "name": "Extract From Text File",
          "value": "text",
          "action": "Extract from text file",
          "description": "Extracts the content of a text file"
        },
        {
          "name": "Extract From XML",
          "value": "xml",
          "action": "Extract from XML",
          "description": "Extracts the content of an XML file"
        },
        {
          "name": "Extract From XLS",
          "value": "xls",
          "action": "Extract from XLS",
          "description": "Transform an Excel file into output items"
        },
        {
          "name": "Extract From XLSX",
          "value": "xlsx",
          "action": "Extract from XLSX",
          "description": "Transform an Excel file into output items"
        },
        {
          "name": "Move File to Base64 String",
          "value": "binaryToPropery",
          "action": "Move file to base64 string",
          "description": "Convert a file into a base64-encoded string"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "csv",
            "html",
            "rtf",
            "ods",
            "xls",
            "xlsx"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Delimiter",
          "name": "delimiter",
          "type": "string",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "default": ",",
          "placeholder": "e.g. ,",
          "description": "Set the field delimiter, usually a comma"
        },
        {
          "displayName": "Encoding",
          "name": "encoding",
          "type": "options",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "options": [
            {
              "name": "ASCII",
              "value": "ascii"
            },
            {
              "name": "Latin1",
              "value": "latin1"
            },
            {
              "name": "UCS-2",
              "value": "ucs-2"
            },
            {
              "name": "UCS2",
              "value": "ucs2"
            },
            {
              "name": "UTF-8",
              "value": "utf-8"
            },
            {
              "name": "UTF16LE",
              "value": "utf16le"
            },
            {
              "name": "UTF8",
              "value": "utf8"
            }
          ],
          "default": "utf-8"
        },
        {
          "displayName": "Exclude Byte Order Mark (BOM)",
          "name": "enableBOM",
          "type": "boolean",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "default": false,
          "description": "Whether to detect and exclude the byte-order-mark from the CSV Input if present"
        },
        {
          "displayName": "Preserve Quotes",
          "name": "relaxQuotes",
          "type": "boolean",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "default": false,
          "description": "Whether to handle unclosed quotes in CSV fields as part of the field's content instead of throwing a parsing error"
        },
        {
          "displayName": "Header Row",
          "name": "headerRow",
          "type": "boolean",
          "default": true,
          "description": "Whether the first row of the file contains the header names",
          "displayOptions": {
            "show": {
              "/operation": [
                "ods",
                "xls",
                "xlsx",
                "csv",
                "html"
              ]
            }
          }
        },
        {
          "displayName": "Include Empty Cells",
          "name": "includeEmptyCells",
          "type": "boolean",
          "default": false,
          "description": "Whether to include empty cells when reading from file. They will be filled with an empty string.",
          "displayOptions": {
            "show": {
              "/operation": [
                "ods",
                "xls",
                "xlsx",
                "csv",
                "html"
              ]
            }
          }
        },
        {
          "displayName": "Max Number of Rows to Load",
          "name": "maxRowCount",
          "type": "number",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "default": -1,
          "placeholder": "e.g. 10",
          "description": "Stop handling records after the requested number of rows are read. Use -1 if you want to load all rows."
        },
        {
          "displayName": "Range",
          "name": "range",
          "type": "string",
          "default": "",
          "description": "The range to read from the table. If set to a number it will be the starting row. If set to string it will be used as A1-style notation range.",
          "displayOptions": {
            "show": {
              "/operation": [
                "ods",
                "xls",
                "xlsx"
              ]
            }
          }
        },
        {
          "displayName": "RAW Data",
          "name": "rawData",
          "type": "boolean",
          "default": false,
          "description": "Whether to return RAW data, instead of parsing it"
        },
        {
          "displayName": "Read As String",
          "name": "readAsString",
          "type": "boolean",
          "default": false,
          "description": "In some cases and file formats, it is necessary to read as string to ensure special characters are interpreted correctly"
        },
        {
          "displayName": "Sheet Name",
          "name": "sheetName",
          "type": "string",
          "default": "Sheet",
          "placeholder": "e.g. mySheet",
          "description": "Name of the sheet to read from in the spreadsheet",
          "displayOptions": {
            "show": {
              "/operation": [
                "ods",
                "xls",
                "xlsx"
              ]
            }
          }
        },
        {
          "displayName": "Starting Line",
          "name": "fromLine",
          "type": "number",
          "displayOptions": {
            "show": {
              "/operation": [
                "csv"
              ]
            }
          },
          "default": 0,
          "placeholder": "e.g. 0",
          "description": "Start handling records from the requested line number. Starts at 0."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "csv",
            "html",
            "rtf",
            "ods",
            "xls",
            "xlsx"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "binaryToPropery",
            "fromJson",
            "text",
            "fromIcs",
            "xml"
          ]
        }
      }
    },
    {
      "displayName": "Destination Output Field",
      "name": "destinationKey",
      "type": "string",
      "default": "data",
      "description": "The name of the output field that will contain the extracted data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "binaryToPropery",
            "fromJson",
            "text",
            "fromIcs",
            "xml"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "File Encoding",
          "name": "encoding",
          "type": "options",
          "options": [
            {
              "name": "armscii8",
              "value": "armscii8"
            },
            {
              "name": "ascii",
              "value": "ascii"
            },
            {
              "name": "base64",
              "value": "base64"
            },
            {
              "name": "big5hkscs",
              "value": "big5hkscs"
            },
            {
              "name": "binary",
              "value": "binary"
            },
            {
              "name": "cesu8",
              "value": "cesu8"
            },
            {
              "name": "cp1046",
              "value": "cp1046"
            },
            {
              "name": "cp1124",
              "value": "cp1124"
            },
            {
              "name": "cp1125",
              "value": "cp1125"
            },
            {
              "name": "cp1129",
              "value": "cp1129"
            },
            {
              "name": "cp1133",
              "value": "cp1133"
            },
            {
              "name": "cp1161",
              "value": "cp1161"
            },
            {
              "name": "cp1162",
              "value": "cp1162"
            },
            {
              "name": "cp1163",
              "value": "cp1163"
            },
            {
              "name": "cp437",
              "value": "cp437"
            },
            {
              "name": "cp720",
              "value": "cp720"
            },
            {
              "name": "cp737",
              "value": "cp737"
            },
            {
              "name": "cp775",
              "value": "cp775"
            },
            {
              "name": "cp808",
              "value": "cp808"
            },
            {
              "name": "cp850",
              "value": "cp850"
            },
            {
              "name": "cp852",
              "value": "cp852"
            },
            {
              "name": "cp855",
              "value": "cp855"
            },
            {
              "name": "cp856",
              "value": "cp856"
            },
            {
              "name": "cp857",
              "value": "cp857"
            },
            {
              "name": "cp858",
              "value": "cp858"
            },
            {
              "name": "cp860",
              "value": "cp860"
            },
            {
              "name": "cp861",
              "value": "cp861"
            },
            {
              "name": "cp862",
              "value": "cp862"
            },
            {
              "name": "cp863",
              "value": "cp863"
            },
            {
              "name": "cp864",
              "value": "cp864"
            },
            {
              "name": "cp865",
              "value": "cp865"
            },
            {
              "name": "cp866",
              "value": "cp866"
            },
            {
              "name": "cp869",
              "value": "cp869"
            },
            {
              "name": "cp922",
              "value": "cp922"
            },
            {
              "name": "cp936",
              "value": "cp936"
            },
            {
              "name": "cp949",
              "value": "cp949"
            },
            {
              "name": "cp950",
              "value": "cp950"
            },
            {
              "name": "eucjp",
              "value": "eucjp"
            },
            {
              "name": "gb18030",
              "value": "gb18030"
            },
            {
              "name": "gbk",
              "value": "gbk"
            },
            {
              "name": "georgianacademy",
              "value": "georgianacademy"
            },
            {
              "name": "georgianps",
              "value": "georgianps"
            },
            {
              "name": "hex",
              "value": "hex"
            },
            {
              "name": "hproman8",
              "value": "hproman8"
            },
            {
              "name": "iso646cn",
              "value": "iso646cn"
            },
            {
              "name": "iso646jp",
              "value": "iso646jp"
            },
            {
              "name": "iso88591",
              "value": "iso88591"
            },
            {
              "name": "iso885910",
              "value": "iso885910"
            },
            {
              "name": "iso885911",
              "value": "iso885911"
            },
            {
              "name": "iso885913",
              "value": "iso885913"
            },
            {
              "name": "iso885914",
              "value": "iso885914"
            },
            {
              "name": "iso885915",
              "value": "iso885915"
            },
            {
              "name": "iso885916",
              "value": "iso885916"
            },
            {
              "name": "iso88592",
              "value": "iso88592"
            },
            {
              "name": "iso88593",
              "value": "iso88593"
            },
            {
              "name": "iso88594",
              "value": "iso88594"
            },
            {
              "name": "iso88595",
              "value": "iso88595"
            },
            {
              "name": "iso88596",
              "value": "iso88596"
            },
            {
              "name": "iso88597",
              "value": "iso88597"
            },
            {
              "name": "iso88598",
              "value": "iso88598"
            },
            {
              "name": "iso88599",
              "value": "iso88599"
            },
            {
              "name": "koi8r",
              "value": "koi8r"
            },
            {
              "name": "koi8ru",
              "value": "koi8ru"
            },
            {
              "name": "koi8t",
              "value": "koi8t"
            },
            {
              "name": "koi8u",
              "value": "koi8u"
            },
            {
              "name": "maccenteuro",
              "value": "maccenteuro"
            },
            {
              "name": "maccroatian",
              "value": "maccroatian"
            },
            {
              "name": "maccyrillic",
              "value": "maccyrillic"
            },
            {
              "name": "macgreek",
              "value": "macgreek"
            },
            {
              "name": "maciceland",
              "value": "maciceland"
            },
            {
              "name": "macintosh",
              "value": "macintosh"
            },
            {
              "name": "macroman",
              "value": "macroman"
            },
            {
              "name": "macromania",
              "value": "macromania"
            },
            {
              "name": "macthai",
              "value": "macthai"
            },
            {
              "name": "macturkish",
              "value": "macturkish"
            },
            {
              "name": "macukraine",
              "value": "macukraine"
            },
            {
              "name": "mik",
              "value": "mik"
            },
            {
              "name": "pt154",
              "value": "pt154"
            },
            {
              "name": "rk1048",
              "value": "rk1048"
            },
            {
              "name": "shiftjis",
              "value": "shiftjis"
            },
            {
              "name": "tcvn",
              "value": "tcvn"
            },
            {
              "name": "tis620",
              "value": "tis620"
            },
            {
              "name": "ucs2",
              "value": "ucs2"
            },
            {
              "name": "utf16",
              "value": "utf16"
            },
            {
              "name": "utf16be",
              "value": "utf16be"
            },
            {
              "name": "utf32",
              "value": "utf32"
            },
            {
              "name": "utf32be",
              "value": "utf32be"
            },
            {
              "name": "utf32le",
              "value": "utf32le"
            },
            {
              "name": "utf7",
              "value": "utf7"
            },
            {
              "name": "utf7imap",
              "value": "utf7imap"
            },
            {
              "name": "utf8",
              "value": "utf8"
            },
            {
              "name": "viscii",
              "value": "viscii"
            },
            {
              "name": "windows1250",
              "value": "windows1250"
            },
            {
              "name": "windows1251",
              "value": "windows1251"
            },
            {
              "name": "windows1252",
              "value": "windows1252"
            },
            {
              "name": "windows1253",
              "value": "windows1253"
            },
            {
              "name": "windows1254",
              "value": "windows1254"
            },
            {
              "name": "windows1255",
              "value": "windows1255"
            },
            {
              "name": "windows1256",
              "value": "windows1256"
            },
            {
              "name": "windows1257",
              "value": "windows1257"
            },
            {
              "name": "windows1258",
              "value": "windows1258"
            },
            {
              "name": "windows874",
              "value": "windows874"
            }
          ],
          "default": "utf8",
          "description": "Specify the encoding of the file, defaults to UTF-8"
        },
        {
          "displayName": "Strip BOM",
          "name": "stripBOM",
          "displayOptions": {
            "show": {
              "encoding": [
                "utf8",
                "cesu8",
                "ucs2"
              ]
            }
          },
          "type": "boolean",
          "default": true,
          "description": "Whether to strip the BOM (Byte Order Mark) from the file, this could help in an environment where the presence of the BOM is causing issues or inconsistencies"
        },
        {
          "displayName": "Keep Source",
          "name": "keepSource",
          "type": "options",
          "default": "json",
          "options": [
            {
              "name": "JSON",
              "value": "json",
              "description": "Include JSON data of the input item"
            },
            {
              "name": "Binary",
              "value": "binary",
              "description": "Include binary data of the input item"
            },
            {
              "name": "Both",
              "value": "both",
              "description": "Include both JSON and binary data of the input item"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "binaryToPropery",
            "fromJson",
            "text",
            "fromIcs",
            "xml"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "pdf"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Join Pages",
          "name": "joinPages",
          "type": "boolean",
          "default": true,
          "description": "Whether to join the text from all pages or return an array of text from each page"
        },
        {
          "displayName": "Keep Source",
          "name": "keepSource",
          "type": "options",
          "default": "json",
          "options": [
            {
              "name": "JSON",
              "value": "json",
              "description": "Include JSON data of the input item"
            },
            {
              "name": "Binary",
              "value": "binary",
              "description": "Include binary data of the input item"
            },
            {
              "name": "Both",
              "value": "both",
              "description": "Include both JSON and binary data of the input item"
            }
          ]
        },
        {
          "displayName": "Max Pages",
          "name": "maxPages",
          "type": "number",
          "default": 0,
          "description": "Maximum number of pages to include"
        },
        {
          "displayName": "Password",
          "name": "password",
          "type": "string",
          "typeOptions": {
            "password": true
          },
          "default": "",
          "description": "Prowide password, if the PDF is encrypted"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "pdf"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "csv",
      "name": "Extract From CSV",
      "description": "Transform a CSV file into output items"
    },
    {
      "operation": "html",
      "name": "Extract From HTML",
      "description": "Transform a table in an HTML file into output items"
    },
    {
      "operation": "fromIcs",
      "name": "Extract From ICS",
      "description": "Transform a ICS file into output items"
    },
    {
      "operation": "fromJson",
      "name": "Extract From JSON",
      "description": "Transform a JSON file into output items"
    },
    {
      "operation": "ods",
      "name": "Extract From ODS",
      "description": "Transform an ODS file into output items"
    },
    {
      "operation": "pdf",
      "name": "Extract From PDF",
      "description": "Extracts the content and metadata from a PDF file"
    },
    {
      "operation": "rtf",
      "name": "Extract From RTF",
      "description": "Transform a table in an RTF file into output items"
    },
    {
      "operation": "text",
      "name": "Extract From Text File",
      "description": "Extracts the content of a text file"
    },
    {
      "operation": "xml",
      "name": "Extract From XML",
      "description": "Extracts the content of an XML file"
    },
    {
      "operation": "xls",
      "name": "Extract From XLS",
      "description": "Transform an Excel file into output items"
    },
    {
      "operation": "xlsx",
      "name": "Extract From XLSX",
      "description": "Transform an Excel file into output items"
    },
    {
      "operation": "binaryToPropery",
      "name": "Move File to Base64 String",
      "description": "Convert a file into a base64-encoded string"
    }
  ]


node_type: nodes-base.filter
package_name: n8n-nodes-base
display_name: Filter
description: Remove items matching a condition
category: transform
development_style: programmatic
version: 2.2
operations: []
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Filter
  description: Documentation for the Filter node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.
  contentType: [integration, reference]
  priority: critical
  ---

  # Filter

  Filter items based on a condition. If the item meets the condition, the Filter node passes it on to the next node in the Filter node output. If the item doesn't meet the condition, the Filter node omits the item from its output.

  ## Node parameters

  Create filter comparison **Conditions** to perform your filter.

  - Use the data type dropdown to select the data type and comparison operation type for your condition. For example, to filter for dates after a particular date, select **Date & Time > is after**.
  - The fields and values to enter into the condition change based on the data type and comparison you select. Refer to [Available data type comparisons](#available-data-type-comparisons) for a full list of all comparisons by data type.

  Select **Add condition** to create more conditions.

  ### Combining conditions

  You can choose to keep items:

  * When they meet all conditions: Create two or more conditions and select **AND** in the dropdown between them.
  * When they meet any of the conditions: Create two or more conditions and select **OR** in the dropdown between them.

  You can't create a mix of AND and OR rules.

  ## Node options

  - **Ignore Case**: Whether to ignore letter case (turned on) or be case sensitive (turned off).
  - **Less Strict Type Validation**: Whether you want n8n to attempt to convert value types based on the operator you choose (turned on) or not (turned off). Turn this on when facing a "wrong type:" error in your node.

  ## Templates and examples

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

  --8<-- "_snippets/integrations/builtin/core-nodes/data-types.md"

properties_schema:
  [
    {
      "displayName": "Conditions",
      "name": "conditions",
      "type": "filter",
      "default": {},
      "typeOptions": {
        "filter": {
          "caseSensitive": "={{!$parameter.options.ignoreCase}}",
          "typeValidation": "={{ ($nodeVersion < 2.1 ? $parameter.options.looseTypeValidation :  $parameter.looseTypeValidation) ? \"loose\" : \"strict\" }}",
          "version": "={{ $nodeVersion >= 2.2 ? 2 : 1 }}"
        }
      }
    },
    {
      "displayName": "Convert types where required",
      "name": "looseTypeValidation",
      "type": "boolean",
      "default": false,
      "description": "If the type of an expression doesn't match the type of the comparison, n8n will try to cast the expression to the required type. E.g. for booleans <code>\"false\"</code> or <code>0</code> will be cast to <code>false</code>",
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 2.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Ignore Case",
          "description": "Whether to ignore letter case when evaluating conditions",
          "name": "ignoreCase",
          "type": "boolean",
          "default": true
        },
        {
          "displayName": "Convert types where required",
          "description": "If the type of an expression doesn't match the type of the comparison, n8n will try to cast the expression to the required type. E.g. for booleans <code>\"false\"</code> or <code>0</code> will be cast to <code>false</code>",
          "name": "looseTypeValidation",
          "type": "boolean",
          "default": true,
          "displayOptions": {
            "show": {
              "@version": [
                {
                  "_cnd": {
                    "lt": 2.1
                  }
                }
              ]
            }
          }
        }
      ]
    }
  ]


node_type: nodes-base.flow
package_name: n8n-nodes-base
display_name: Flow
description: Consume Flow API
category: output
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "flowApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Flow node documentation
  description: Learn how to use the Flow node in n8n. Follow technical documentation to integrate Flow node into your workflows.
  contentType: [integration, reference]
  ---

  # Flow node

  Use the Flow node to automate work in Flow, and integrate Flow with other applications. n8n has built-in support for a wide range of Flow features, including creating, updating, and getting tasks.

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

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

  ## Operations

  * Task
      * Create a new task
      * Update a task
      * Get a task
      * Get all the tasks

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "task",
      "options": [
        {
          "name": "Task",
          "value": "task",
          "description": "Tasks are units of work that can be private or assigned to a list. Through this endpoint, you can manipulate your tasks in Flow, including creating new ones."
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new task",
          "action": "Create a task"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a task",
          "action": "Update a task"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a task",
          "action": "Get a task"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many tasks",
          "action": "Get many tasks"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Workspace ID",
      "name": "workspaceId",
      "type": "string",
      "default": "",
      "description": "Create resources under the given workspace",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "description": "The title of the task",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Owner ID",
          "name": "ownerid",
          "type": "string",
          "default": "",
          "description": "The ID of the account to whom this task will be assigned"
        },
        {
          "displayName": "List ID",
          "name": "listID",
          "type": "string",
          "default": "",
          "description": "Put the new task in a list (\"project\"). Omit this param to have the task be private."
        },
        {
          "displayName": "Starts On",
          "name": "startsOn",
          "type": "dateTime",
          "default": "",
          "description": "The date on which the task should start"
        },
        {
          "displayName": "Due On",
          "name": "dueOn",
          "type": "dateTime",
          "default": "",
          "description": "The date on which the task should be due"
        },
        {
          "displayName": "Mirror Parent Subscribers",
          "name": "mirrorParentSubscribers",
          "type": "boolean",
          "default": false,
          "description": "Whether this task will be a subtask, and this is true, the parent tasks's subscribers will be mirrored to this one"
        },
        {
          "displayName": "Mirror Parent Tags",
          "name": "mirrorParentTags",
          "type": "boolean",
          "default": false,
          "description": "Whether this task will be a subtask, and this is true, the parent tasks's tags will be mirrored to this one"
        },
        {
          "displayName": "Note Content",
          "name": "noteContent",
          "type": "string",
          "default": "",
          "description": "Provide the content for the task's note"
        },
        {
          "displayName": "Note Mime Type",
          "name": "noteMimeType",
          "type": "options",
          "default": "text/plain",
          "options": [
            {
              "name": "text/plain",
              "value": "text/plain"
            },
            {
              "name": "text/x-markdown",
              "value": "text/x-markdown"
            },
            {
              "name": "text/html",
              "value": "text/html"
            }
          ],
          "description": "Identify which markup language is used to format the given note"
        },
        {
          "displayName": "Parent ID",
          "name": "parentId",
          "type": "string",
          "default": "",
          "description": "If provided, this task will become a subtask of the given task"
        },
        {
          "displayName": "Position List",
          "name": "positionList",
          "type": "number",
          "default": 0,
          "description": "Determines the sort order when showing tasks in, or grouped by, a list"
        },
        {
          "displayName": "Position Upcoming",
          "name": "positionUpcoming",
          "type": "number",
          "default": 0,
          "description": "Determines the sort order when showing tasks grouped by their due_date"
        },
        {
          "displayName": "Position",
          "name": "position",
          "type": "number",
          "default": 0,
          "description": "Determines the sort order of tasks"
        },
        {
          "displayName": "Section ID",
          "name": "sectionId",
          "type": "string",
          "default": "",
          "description": "Specify which section under which to create this task"
        },
        {
          "displayName": "Tags",
          "name": "tags",
          "type": "string",
          "default": "",
          "description": "A list of tag names to apply to the new task separated by a comma (,)"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Workspace ID",
      "name": "workspaceId",
      "type": "string",
      "default": "",
      "description": "Create resources under the given workspace",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Task ID",
      "name": "taskId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The title of the task"
        },
        {
          "displayName": "Completed",
          "name": "completed",
          "type": "boolean",
          "default": false,
          "description": "Whether to complete the task"
        },
        {
          "displayName": "Owner ID",
          "name": "ownerid",
          "type": "string",
          "default": "",
          "description": "The ID of the account to whom this task will be assigned"
        },
        {
          "displayName": "List ID",
          "name": "listID",
          "type": "string",
          "default": "",
          "description": "Put the new task in a list (\"project\"). Omit this param to have the task be private."
        },
        {
          "displayName": "Starts On",
          "name": "startsOn",
          "type": "dateTime",
          "default": "",
          "description": "The date on which the task should start"
        },
        {
          "displayName": "Due On",
          "name": "dueOn",
          "type": "dateTime",
          "default": "",
          "description": "The date on which the task should be due"
        },
        {
          "displayName": "Mirror Parent Subscribers",
          "name": "mirrorParentSubscribers",
          "type": "boolean",
          "default": false,
          "description": "Whether this task will be a subtask, and this is true, the parent tasks's subscribers will be mirrored to this one"
        },
        {
          "displayName": "Mirror Parent Tags",
          "name": "mirrorParentTags",
          "type": "boolean",
          "default": false,
          "description": "Whether this task will be a subtask, and this is true, the parent tasks's tags will be mirrored to this one"
        },
        {
          "displayName": "Note Content",
          "name": "noteContent",
          "type": "string",
          "default": "",
          "description": "Provide the content for the task's note"
        },
        {
          "displayName": "Note Mime Type",
          "name": "noteMimeType",
          "type": "options",
          "default": "text/plain",
          "options": [
            {
              "name": "Text/plain",
              "value": "text/plain"
            },
            {
              "name": "text/x-markdown",
              "value": "text/x-markdown"
            },
            {
              "name": "Text/html",
              "value": "text/html"
            }
          ],
          "description": "Identify which markup language is used to format the given note"
        },
        {
          "displayName": "Parent ID",
          "name": "parentId",
          "type": "string",
          "default": "",
          "description": "If provided, this task will become a subtask of the given task"
        },
        {
          "displayName": "Position List",
          "name": "positionList",
          "type": "number",
          "default": 0,
          "description": "Determines the sort order when showing tasks in, or grouped by, a list"
        },
        {
          "displayName": "Position Upcoming",
          "name": "positionUpcoming",
          "type": "number",
          "default": 0,
          "description": "Determines the sort order when showing tasks grouped by their due_date"
        },
        {
          "displayName": "Position",
          "name": "position",
          "type": "number",
          "default": 0,
          "description": "Determines the sort order of tasks"
        },
        {
          "displayName": "Section ID",
          "name": "sectionId",
          "type": "string",
          "default": "",
          "description": "Specify which section under which to create this task"
        },
        {
          "displayName": "Tags",
          "name": "tags",
          "type": "string",
          "default": "",
          "description": "A list of tag names to apply to the new task separated by a comma (,)"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Task ID",
      "name": "taskId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Include",
          "name": "include",
          "type": "multiOptions",
          "default": [],
          "options": [
            {
              "name": "Schedule",
              "value": "schedule"
            },
            {
              "name": "Files",
              "value": "files"
            },
            {
              "name": "File Associations",
              "value": "file_associations"
            },
            {
              "name": "Parent",
              "value": "parent"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "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": [
            "task"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Include",
          "name": "include",
          "type": "multiOptions",
          "default": [],
          "options": [
            {
              "name": "Schedule",
              "value": "schedule"
            },
            {
              "name": "Files",
              "value": "files"
            },
            {
              "name": "File Associations",
              "value": "file_associations"
            },
            {
              "name": "Parent",
              "value": "parent"
            }
          ]
        },
        {
          "displayName": "Order",
          "name": "order",
          "type": "options",
          "default": "created_at",
          "options": [
            {
              "name": "Account ID",
              "value": "account_id"
            },
            {
              "name": "Completed At",
              "value": "completed_at"
            },
            {
              "name": "Created At",
              "value": "created_at"
            },
            {
              "name": "Due On",
              "value": "due_on"
            },
            {
              "name": "List ID",
              "value": "list_id"
            },
            {
              "name": "Name",
              "value": "name"
            },
            {
              "name": "Owner ID",
              "value": "owner_id"
            },
            {
              "name": "Position",
              "value": "position"
            },
            {
              "name": "Section ID",
              "value": "section_id"
            },
            {
              "name": "Starts On",
              "value": "starts_on"
            },
            {
              "name": "Updated At",
              "value": "updated_at"
            }
          ]
        },
        {
          "displayName": "Workspace ID",
          "name": "workspaceId",
          "type": "string",
          "default": "",
          "description": "Create resources under the given workspace"
        },
        {
          "displayName": "Created Before",
          "name": "createdBefore",
          "type": "dateTime",
          "default": "",
          "description": "Select resources created before a certain time"
        },
        {
          "displayName": "Created After",
          "name": "createdAfter",
          "type": "dateTime",
          "default": "",
          "description": "Select resources created after a certain time"
        },
        {
          "displayName": "Update Before",
          "name": "updateBefore",
          "type": "dateTime",
          "default": "",
          "description": "Select resources updated before a certain time"
        },
        {
          "displayName": "Update After",
          "name": "updateAfter",
          "type": "dateTime",
          "default": "",
          "description": "Select resources updated after a certain time"
        },
        {
          "displayName": "Deleted",
          "name": "deleted",
          "type": "boolean",
          "default": false,
          "description": "Whether to select deleted resources"
        },
        {
          "displayName": "Cleared",
          "name": "cleared",
          "type": "boolean",
          "default": false,
          "description": "Whether to select cleared resources"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new task"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a task"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a task"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many tasks"
    }
  ]


node_type: nodes-base.flowTrigger
package_name: n8n-nodes-base
display_name: Flow Trigger
description: Handle Flow events via webhooks
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "flowApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Flow Trigger node documentation
  description: Learn how to use the Flow Trigger node in n8n. Follow technical documentation to integrate Flow Trigger node into your workflows.
  contentType: [integration, reference]
  ---

  # Flow Trigger node

  [Flow](https://www.getflow.com/){:target=_blank .external-link} is modern task and project management software for teams. It brings together tasks, projects, timelines, and conversations, and integrates with a lot of tools.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Flow Trigger integrations](https://n8n.io/integrations/flow-trigger/){:target=_blank .external-link} page.
  ///

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "",
      "description": "Resource that triggers the webhook",
      "options": [
        {
          "name": "Project",
          "value": "list"
        },
        {
          "name": "Task",
          "value": "task"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Project ID",
      "name": "listIds",
      "type": "string",
      "default": "",
      "description": "Lists IDs, perhaps known better as \"Projects\" separated by a comma (,)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "list"
          ]
        },
        "hide": {
          "resource": [
            "task"
          ]
        }
      }
    },
    {
      "displayName": "Task ID",
      "name": "taskIds",
      "type": "string",
      "default": "",
      "description": "Task IDs separated by a comma (,)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "task"
          ]
        },
        "hide": {
          "resource": [
            "list"
          ]
        }
      }
    }
  ]


node_type: nodes-base.form
package_name: n8n-nodes-base
display_name: n8n Form
description: Generate webforms in n8n and pass their responses to the workflow
category: input
development_style: programmatic
version: 1
credentials_required: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: n8n Form node documentation
  description: Documentation for the n8n Form node in n8n, a workflow automation platform. Includes guidance on usage and links to examples.
  contentType: [integration, reference]
  ---

  # n8n Form node

  Use the n8n Form node to create user-facing forms with multiple steps. You can add other nodes with custom logic between to process user input. You must start the workflow with the [n8n Form Trigger](/integrations/builtin/core-nodes/n8n-nodes-base.formtrigger.md).

  [[ workflowDemo("file:///integrations/builtin/core-nodes/n8n-nodes-base.form/mutually-exclusive-branching.json") ]]

  ## Setting up the node

  ### Set default selections with query parameters

  You can set the initial values for fields by using [query parameters](https://en.wikipedia.org/wiki/Query_string#Web_forms){:target=_blank .external-link} with the initial URL provided by the [n8n Form Trigger](/integrations/builtin/core-nodes/n8n-nodes-base.formtrigger.md). Every page in the form receives the same query parameters sent to the n8n Form Trigger URL.

  /// note | Only for production
  Query parameters are only available when using the form in production mode. n8n won't populate field values from query parameters in testing mode.
  ///

  <!-- vale from-microsoft.Percentages = NO -->
  When using query parameters, [percent-encode](https://en.wikipedia.org/wiki/Percent-encoding){:target=_blank .external-link} any field names or values that use special characters. This ensures n8n uses the initial values for the given fields. You can use tools like [URL Encode/Decode](https://www.url-encode-decode.com/) to format your query parameters using percent-encoding.

  As an example, imagine you have a form with the following properties:

  * Production URL: `https://my-account.n8n.cloud/form/my-form`
  * Fields:
  	* `name`: `Jane Doe`
  	* `email`: `jane.doe@example.com`

  With query parameters and percent-encoding, you could use the following URL to set initial field values to the data above:

  ```
  https://my-account.n8n.cloud/form/my-form?email=jane.doe%40example.com&name=Jane%20Doe
  ```

  Here, percent-encoding replaces the at-symbol (`@`) with the string `%40` and the space character (` `) with the string `%20`. This will set the initial value for these fields no matter which page of the form they appear on.
  <!-- vale from-microsoft.Percentages = YES -->

  ### Displaying custom HTML

  You can display custom HTML on your form by adding a **Custom HTML** field to your form. This provides an **HTML** box where you can insert arbitrary HTML code to display as part of the form page.

  You can use the HTML field to enrich your form page by including things like links, images, videos, and more. n8n will render the content with the rest of the form fields in the normal document flow.

  Because custom HTML content is read-only, these fields aren't included in the form output data by default. To include the raw HTML content in the node output, provide a name for the data using the **Element Name** field.

  The HTML field doesn't support `<script>`, `<style>`, or `<input>` elements.

  ### Including hidden fields

  It's possible to include fields in a form without displaying them to users. This is useful when you want to pass extra data to the form that doesn't require interactive user input.

  To add fields that won't show up on the form, use the **Hidden Field** form element. There, you can define the **Field Name** and optionally provide a default value by filling out the **Field Value**.

  When serving the form, you can pass values for hidden fields using [query parameters](#set-default-selections-with-query-parameters).

  ### Defining the form using JSON

  Use **Define Form** > **Using JSON** to define the fields of your form with a [JSON array of objects](/data/data-structure.md). Each object defines a single field by using a combination of these keys:

  - `fieldLabel`: The label that appears above the input field. 
  - `fieldType`: Choose from `date`, `dropdown`, `email`, `file`, `number`, `password`, `text`, or `textarea`.
      - Use `date` to include a date picker in the form. Refer to [Date and time with Luxon](/code/cookbook/luxon.md) for more information on formatting dates.
  	- When using `dropdown`, set the choices with `fieldOptions` (reference the example below). By default, the dropdown is single-choice. To make it multiple-choice, set `multiselect` to `true`.
  	- When using `file`, set `multipleFiles` to `true` to allow users to select more than one file. To define the file types to allow, set `acceptFileTypes` to a string containing a comma-separated list of file extensions (reference the example below).
  - `placeholder`: Specify placeholder data for the field. You can use this for every `fieldType` except `dropdown`, `date`, and `file`.
  - `requiredField`: Require users to complete this field on the form.

  An example JSON that shows the general format required and the keys available:

  ```javascript
  // Use the "requiredField" key on any field to mark it as mandatory
  // Use the "placeholder" key to specify placeholder data for all fields
  //     except 'dropdown', 'date' and 'file'

  [
  	{
  		"fieldLabel": "Date Field",
  		"fieldType": "date",
  		"formatDate": "mm/dd/yyyy", // how to format received date in n8n
  		"requiredField": true
  	},
  	{
  		"fieldLabel": "Dropdown Options",
  		"fieldType": "dropdown",
  		"fieldOptions": {
  			"values": [
  				{
  					"option": "option 1"
  				},
  				{
  					"option": "option 2"
  				}
  			]
  		},
  		"requiredField": true
  	},
  	{
  		"fieldLabel": "Multiselect",
  		"fieldType": "dropdown",
  		"fieldOptions": {
  			"values": [
  				{
  					"option": "option 1"
  				},
  				{
  					"option": "option 2"
  				}
  			]
  		},
  		"multiselect": true // setting to true allows multi-select
  	},
  	{
  		"fieldLabel": "Email",
  		"fieldType": "email",
  		"placeholder": "me@mail.con"
  	},
  	{
  		"fieldLabel": "File",
  		"fieldType": "file",
  		"multipleFiles": true, // setting to true allows multiple files selection
  		"acceptFileTypes": ".jpg, .png" // allowed file types
  	},
  	{
  		"fieldLabel": "Number",
  		"fieldType": "number"
  	},
  	{
  		"fieldLabel": "Password",
  		"fieldType": "password"
  	},
  	{
  		// "fieldType": "text" can be omitted since it's the default type
  		"fieldLabel": "Text"
  	},
  	{
  		"fieldLabel": "Textarea",
  		"fieldType": "textarea"
  	}
  ]
  ```

  ### Form Ending

  Use the **Form Ending** Page Type to end a form and either show a completion page, redirect the user to a URL, or display custom HTML or text. Only one Form Ending page displays per execution, even when n8n executes [multiple branches](#forms-with-branches) that contain Form Ending nodes.

  Choose between these options when using **On n8n Form Submission**:

  - **Show Completion Screen**: Shows users a final screen to confirm that they submitted the form.
  	- Fill in **Completion Title** to set the `h1` title on the form.
  	- n8n displays the **Completion Message** as a subtitle below the main `h1` title on the form. Use `\n` or `<br>` to add a line break. 
  	- Select **Add option** and fill in **Completion Page Title** to set the page's title in the browser tab.

  When using **Redirect to URL**, fill in the **URL** field with the page you want to redirect to when users complete the form.

  Use **Show Text** to display a final page defined by arbitrary plain text and HTML. Fill in the **Text** field with the HTML or plain text content you wish to show.

  ### Forms with branches

  The n8n Form node executes and displays its associated form page whenever it receives data from a previous node. When building forms with n8n, to avoid confusion, it's important to understand how forms behave when branching occurs.

  #### Workflows with mutually exclusive branches

  Form workflows containing mutually exclusive branches work as expected. n8n will execute a single branch according to the submitted data and conditions you outline. As it executes, n8n will display each page in the branch, ending with an n8n Form node with the **Form Ending** page type.

  This workflow demonstrates mutually exclusive branching. Each selection can only execute a single branch.

  [[ workflowDemo("file:///integrations/builtin/core-nodes/n8n-nodes-base.form/mutually-exclusive-branching.json") ]]

  #### Workflows that may execute multiple branches

  Form workflows that send data to multiple branches at the same time require more care. When multiple branches receive data during an execution (for example, from a [switch](/integrations/builtin/core-nodes/n8n-nodes-base.switch.md) node), n8n executes each branch that receives data [sequentially](/flow-logic/execution-order.md). Upon reaching the end of one branch, the execution will move to the next branch with data.

  n8n only executes a single **Form Ending** n8n Form node for each execution. When multiple branches of a form workflow receive data, n8n ignores all Form Ending nodes except for the one associated with the final branch.

  This workflow may execute more than one branch during an execution. Here, n8n executes all valid branches sequentially. This impacts which n8n Form nodes n8n executes (in particular, which **Form Ending** node displays):

  [[ workflowDemo("file:///integrations/builtin/core-nodes/n8n-nodes-base.form/multiple-branch-execution.json") ]]

  ### Node options

  Select **Add Option** to view more configuration options: 

  - **Form Title**: The title for your form. n8n displays the **Form Title** as the webpage title and main `h1` title on the form.
  - **Form Description**: The description for your form. n8n displays the **Form Description** as a subtitle below the main `h1` title on the form. This field supports HTML. Use `\n` or `<br>` to add a line break. The Form Description also populates the [HTML meta description](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta/name#standard_metadata_names_defined_in_the_html_specification) for the page.
  - **Button Label**: The label to use for your form's submit button. n8n displays the **Button Label** as the name of the submit button.

  ## Running the node

  ### Build and test workflows

  While building or testing a workflow, use the **Test URL** in the [n8n Form Trigger](/integrations/builtin/core-nodes/n8n-nodes-base.formtrigger.md). Using a test URL ensures that you can view the incoming data in the editor UI, which is useful for debugging. 

  There are two ways to test:

  - Select **Test Step**. n8n opens the form. When you submit the form, n8n runs the node and any previous nodes, but not the rest of the workflow.
  - Select **Test Workflow**. n8n opens the form. When you submit the form, n8n runs the workflow.

  ### Production workflows

  When your workflow is ready, switch to using the n8n Form Trigger's **Production URL** by opening the trigger node and selecting the **Production URL** in the **From URLS** selector. You can then activate your workflow, and n8n runs it automatically when a user submits the form.

  When working with a production URL, ensure that you have saved and activated the workflow. Data flowing through the Form trigger isn't visible in the editor UI with the production URL.

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "An n8n Form Trigger node must be set up before this node",
      "name": "triggerNotice",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Page Type",
      "name": "operation",
      "type": "options",
      "default": "page",
      "options": [
        {
          "name": "Next Form Page",
          "value": "page"
        },
        {
          "name": "Form Ending",
          "value": "completion"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Define Form",
      "name": "defineForm",
      "type": "options",
      "default": "fields",
      "options": [
        {
          "name": "Using Fields Below",
          "value": "fields"
        },
        {
          "name": "Using JSON",
          "value": "json"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "page"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Form Fields",
      "name": "jsonOutput",
      "type": "json",
      "default": "[\n   {\n      \"fieldLabel\":\"Name\",\n      \"placeholder\":\"enter you name\",\n      \"requiredField\":true\n   },\n   {\n      \"fieldLabel\":\"Age\",\n      \"fieldType\":\"number\",\n      \"placeholder\":\"enter your age\"\n   },\n   {\n      \"fieldLabel\":\"Email\",\n      \"fieldType\":\"email\",\n      \"requiredField\":true\n   }\n]",
      "displayOptions": {
        "show": {
          "defineForm": [
            "json"
          ],
          "operation": [
            "page"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Form Elements",
      "name": "formFields",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Values",
          "name": "values",
          "values": [
            {
              "displayName": "Field Name",
              "name": "fieldLabel",
              "type": "string",
              "default": "",
              "placeholder": "e.g. What is your name?",
              "description": "Label that appears above the input field",
              "required": true,
              "displayOptions": {
                "hide": {
                  "fieldType": [
                    "hiddenField",
                    "html"
                  ]
                }
              }
            },
            {
              "displayName": "Element Type",
              "name": "fieldType",
              "type": "options",
              "default": "text",
              "description": "The type of field to add to the form",
              "options": [
                {
                  "name": "Custom HTML",
                  "value": "html"
                },
                {
                  "name": "Date",
                  "value": "date"
                },
                {
                  "name": "Dropdown List",
                  "value": "dropdown"
                },
                {
                  "name": "Email",
                  "value": "email"
                },
                {
                  "name": "File",
                  "value": "file"
                },
                {
                  "name": "Hidden Field",
                  "value": "hiddenField"
                },
                {
                  "name": "Number",
                  "value": "number"
                },
                {
                  "name": "Password",
                  "value": "password"
                },
                {
                  "name": "Text",
                  "value": "text"
                },
                {
                  "name": "Textarea",
                  "value": "textarea"
                }
              ],
              "required": true
            },
            {
              "displayName": "Element Name",
              "name": "elementName",
              "type": "string",
              "default": "",
              "placeholder": "e.g. content-section",
              "description": "Optional field. It can be used to include the html in the output.",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "html"
                  ]
                }
              }
            },
            {
              "displayName": "Placeholder",
              "name": "placeholder",
              "description": "Sample text to display inside the field",
              "type": "string",
              "default": "",
              "displayOptions": {
                "hide": {
                  "fieldType": [
                    "dropdown",
                    "date",
                    "file",
                    "html",
                    "hiddenField"
                  ]
                }
              }
            },
            {
              "displayName": "Field Name",
              "name": "fieldName",
              "description": "The name of the field, used in input attributes and referenced by the workflow",
              "type": "string",
              "default": "",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "hiddenField"
                  ]
                }
              }
            },
            {
              "displayName": "Field Value",
              "name": "fieldValue",
              "description": "Input value can be set here or will be passed as a query parameter via Field Name if no value is set",
              "type": "string",
              "default": "",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "hiddenField"
                  ]
                }
              }
            },
            {
              "displayName": "Field Options",
              "name": "fieldOptions",
              "placeholder": "Add Field Option",
              "description": "List of options that can be selected from the dropdown",
              "type": "fixedCollection",
              "default": {
                "values": [
                  {
                    "option": ""
                  }
                ]
              },
              "required": true,
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "dropdown"
                  ]
                }
              },
              "typeOptions": {
                "multipleValues": true,
                "sortable": true
              },
              "options": [
                {
                  "displayName": "Values",
                  "name": "values",
                  "values": [
                    {
                      "displayName": "Option",
                      "name": "option",
                      "type": "string",
                      "default": ""
                    }
                  ]
                }
              ]
            },
            {
              "displayName": "Multiple Choice",
              "name": "multiselect",
              "type": "boolean",
              "default": false,
              "description": "Whether to allow the user to select multiple options from the dropdown list",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "dropdown"
                  ]
                }
              }
            },
            {
              "displayName": "HTML",
              "name": "html",
              "typeOptions": {
                "editor": "htmlEditor"
              },
              "type": "string",
              "noDataExpression": true,
              "default": "<!-- Your custom HTML here --->\n\n\n",
              "description": "HTML elements to display on the form page",
              "hint": "Does not accept <code>&lt;script&gt;</code>, <code>&lt;style&gt;</code> or <code>&lt;input&gt;</code> tags",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "html"
                  ]
                }
              }
            },
            {
              "displayName": "Multiple Files",
              "name": "multipleFiles",
              "type": "boolean",
              "default": true,
              "description": "Whether to allow the user to select multiple files from the file input or just one",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "file"
                  ]
                }
              }
            },
            {
              "displayName": "Accepted File Types",
              "name": "acceptFileTypes",
              "type": "string",
              "default": "",
              "description": "Comma-separated list of allowed file extensions",
              "hint": "Leave empty to allow all file types",
              "placeholder": "e.g. .jpg, .png",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "file"
                  ]
                }
              }
            },
            {
              "displayName": "The displayed date is formatted based on the locale of the user's browser",
              "name": "formatDate",
              "type": "notice",
              "default": "",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "date"
                  ]
                }
              }
            },
            {
              "displayName": "Required Field",
              "name": "requiredField",
              "type": "boolean",
              "default": false,
              "description": "Whether to require the user to enter a value for this field before submitting the form",
              "displayOptions": {
                "hide": {
                  "fieldType": [
                    "html",
                    "hiddenField"
                  ]
                }
              }
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "defineForm": [
            "fields"
          ],
          "operation": [
            "page"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "sortable": true
      }
    },
    {
      "displayName": "Limit Wait Time",
      "name": "limitWaitTime",
      "type": "boolean",
      "default": false,
      "description": "Whether to limit the time this node should wait for a user response before execution resumes",
      "displayOptions": {
        "show": {
          "operation": [
            "page"
          ]
        }
      }
    },
    {
      "displayName": "Limit Type",
      "name": "limitType",
      "type": "options",
      "default": "afterTimeInterval",
      "description": "Sets the condition for the execution to resume. Can be a specified date or after some time.",
      "options": [
        {
          "name": "After Time Interval",
          "description": "Waits for a certain amount of time",
          "value": "afterTimeInterval"
        },
        {
          "name": "At Specified Time",
          "description": "Waits until the set date and time to continue",
          "value": "atSpecifiedTime"
        }
      ],
      "displayOptions": {
        "show": {
          "limitWaitTime": [
            true
          ],
          "operation": [
            "page"
          ]
        }
      }
    },
    {
      "displayName": "Amount",
      "name": "resumeAmount",
      "type": "number",
      "default": 1,
      "description": "The time to wait",
      "displayOptions": {
        "show": {
          "limitType": [
            "afterTimeInterval"
          ],
          "limitWaitTime": [
            true
          ],
          "operation": [
            "page"
          ]
        }
      },
      "typeOptions": {
        "minValue": 0,
        "numberPrecision": 2
      }
    },
    {
      "displayName": "Unit",
      "name": "resumeUnit",
      "type": "options",
      "default": "hours",
      "description": "Unit of the interval value",
      "options": [
        {
          "name": "Minutes",
          "value": "minutes"
        },
        {
          "name": "Hours",
          "value": "hours"
        },
        {
          "name": "Days",
          "value": "days"
        }
      ],
      "displayOptions": {
        "show": {
          "limitType": [
            "afterTimeInterval"
          ],
          "limitWaitTime": [
            true
          ],
          "operation": [
            "page"
          ]
        }
      }
    },
    {
      "displayName": "Max Date and Time",
      "name": "maxDateAndTime",
      "type": "dateTime",
      "default": "",
      "description": "Continue execution after the specified date and time",
      "displayOptions": {
        "show": {
          "limitType": [
            "atSpecifiedTime"
          ],
          "limitWaitTime": [
            true
          ],
          "operation": [
            "page"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Form Title",
          "name": "formTitle",
          "type": "string",
          "default": "",
          "placeholder": "e.g. Contact us",
          "required": false,
          "description": "Shown at the top of the form"
        },
        {
          "displayName": "Form Description",
          "name": "formDescription",
          "type": "string",
          "default": "",
          "placeholder": "e.g. We'll get back to you soon",
          "description": "Shown underneath the Form Title. Can be used to prompt the user on how to complete the form. Accepts HTML.",
          "typeOptions": {
            "rows": 2
          }
        },
        {
          "displayName": "Button Label",
          "name": "buttonLabel",
          "type": "string",
          "default": "Submit"
        },
        {
          "displayName": "Custom Form Styling",
          "name": "customCss",
          "type": "string",
          "typeOptions": {
            "rows": 10,
            "editor": "cssEditor"
          },
          "default": ":root {\n\t--font-family: 'Open Sans', sans-serif;\n\t--font-weight-normal: 400;\n\t--font-weight-bold: 600;\n\t--font-size-body: 12px;\n\t--font-size-label: 14px;\n\t--font-size-test-notice: 12px;\n\t--font-size-input: 14px;\n\t--font-size-header: 20px;\n\t--font-size-paragraph: 14px;\n\t--font-size-link: 12px;\n\t--font-size-error: 12px;\n\t--font-size-html-h1: 28px;\n\t--font-size-html-h2: 20px;\n\t--font-size-html-h3: 16px;\n\t--font-size-html-h4: 14px;\n\t--font-size-html-h5: 12px;\n\t--font-size-html-h6: 10px;\n\t--font-size-subheader: 14px;\n\n\t/* Colors */\n\t--color-background: #fbfcfe;\n\t--color-test-notice-text: #e6a23d;\n\t--color-test-notice-bg: #fefaf6;\n\t--color-test-notice-border: #f6dcb7;\n\t--color-card-bg: #ffffff;\n\t--color-card-border: #dbdfe7;\n\t--color-card-shadow: rgba(99, 77, 255, 0.06);\n\t--color-link: #7e8186;\n\t--color-header: #525356;\n\t--color-label: #555555;\n\t--color-input-border: #dbdfe7;\n\t--color-input-text: #71747A;\n\t--color-focus-border: rgb(90, 76, 194);\n\t--color-submit-btn-bg: #ff6d5a;\n\t--color-submit-btn-text: #ffffff;\n\t--color-error: #ea1f30;\n\t--color-required: #ff6d5a;\n\t--color-clear-button-bg: #7e8186;\n\t--color-html-text: #555;\n\t--color-html-link: #ff6d5a;\n\t--color-header-subtext: #7e8186;\n\n\t/* Border Radii */\n\t--border-radius-card: 8px;\n\t--border-radius-input: 6px;\n\t--border-radius-clear-btn: 50%;\n\t--card-border-radius: 8px;\n\n\t/* Spacing */\n\t--padding-container-top: 24px;\n\t--padding-card: 24px;\n\t--padding-test-notice-vertical: 12px;\n\t--padding-test-notice-horizontal: 24px;\n\t--margin-bottom-card: 16px;\n\t--padding-form-input: 12px;\n\t--card-padding: 24px;\n\t--card-margin-bottom: 16px;\n\n\t/* Dimensions */\n\t--container-width: 448px;\n\t--submit-btn-height: 48px;\n\t--checkbox-size: 18px;\n\n\t/* Others */\n\t--box-shadow-card: 0px 4px 16px 0px var(--color-card-shadow);\n\t--opacity-placeholder: 0.5;\n}",
          "description": "Override default styling of the public form interface with CSS"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "page"
          ]
        }
      }
    },
    {
      "displayName": "On n8n Form Submission",
      "name": "respondWith",
      "type": "options",
      "default": "text",
      "options": [
        {
          "name": "Show Completion Screen",
          "value": "text",
          "description": "Show a response text to the user"
        },
        {
          "name": "Redirect to URL",
          "value": "redirect",
          "description": "Redirect the user to a URL"
        },
        {
          "name": "Show Text",
          "value": "showText",
          "description": "Display simple text or HTML"
        },
        {
          "name": "Return Binary File",
          "value": "returnBinary",
          "description": "Return incoming binary file"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "URL",
      "name": "redirectUrl",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "respondWith": [
            "redirect"
          ],
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Completion Title",
      "name": "completionTitle",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "respondWith": [
            "text",
            "returnBinary"
          ],
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Completion Message",
      "name": "completionMessage",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "respondWith": [
            "text",
            "returnBinary"
          ],
          "operation": [
            "completion"
          ]
        }
      },
      "typeOptions": {
        "rows": 2
      }
    },
    {
      "displayName": "Text",
      "name": "responseText",
      "type": "string",
      "default": "",
      "description": "The text to display on the page. Use HTML to show a customized web page.",
      "displayOptions": {
        "show": {
          "respondWith": [
            "showText"
          ],
          "operation": [
            "completion"
          ]
        }
      },
      "typeOptions": {
        "rows": 2
      }
    },
    {
      "displayName": "Input Data Field Name",
      "name": "inputDataFieldName",
      "type": "string",
      "default": "data",
      "description": "Find the name of input field containing the binary data to return in the Input panel on the left, in the Binary tab",
      "displayOptions": {
        "show": {
          "respondWith": [
            "returnBinary"
          ],
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Limit Wait Time",
      "name": "limitWaitTime",
      "type": "boolean",
      "default": false,
      "description": "Whether to limit the time this node should wait for a user response before execution resumes",
      "displayOptions": {
        "show": {
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Limit Type",
      "name": "limitType",
      "type": "options",
      "default": "afterTimeInterval",
      "description": "Sets the condition for the execution to resume. Can be a specified date or after some time.",
      "options": [
        {
          "name": "After Time Interval",
          "description": "Waits for a certain amount of time",
          "value": "afterTimeInterval"
        },
        {
          "name": "At Specified Time",
          "description": "Waits until the set date and time to continue",
          "value": "atSpecifiedTime"
        }
      ],
      "displayOptions": {
        "show": {
          "limitWaitTime": [
            true
          ],
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Amount",
      "name": "resumeAmount",
      "type": "number",
      "default": 1,
      "description": "The time to wait",
      "displayOptions": {
        "show": {
          "limitType": [
            "afterTimeInterval"
          ],
          "limitWaitTime": [
            true
          ],
          "operation": [
            "completion"
          ]
        }
      },
      "typeOptions": {
        "minValue": 0,
        "numberPrecision": 2
      }
    },
    {
      "displayName": "Unit",
      "name": "resumeUnit",
      "type": "options",
      "default": "hours",
      "description": "Unit of the interval value",
      "options": [
        {
          "name": "Minutes",
          "value": "minutes"
        },
        {
          "name": "Hours",
          "value": "hours"
        },
        {
          "name": "Days",
          "value": "days"
        }
      ],
      "displayOptions": {
        "show": {
          "limitType": [
            "afterTimeInterval"
          ],
          "limitWaitTime": [
            true
          ],
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Max Date and Time",
      "name": "maxDateAndTime",
      "type": "dateTime",
      "default": "",
      "description": "Continue execution after the specified date and time",
      "displayOptions": {
        "show": {
          "limitType": [
            "atSpecifiedTime"
          ],
          "limitWaitTime": [
            true
          ],
          "operation": [
            "completion"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Completion Page Title",
          "name": "formTitle",
          "type": "string",
          "default": "",
          "placeholder": "e.g. Contact us",
          "required": false,
          "description": "Shown at the top of the form"
        },
        {
          "displayName": "Custom Form Styling",
          "name": "customCss",
          "type": "string",
          "typeOptions": {
            "rows": 10,
            "editor": "cssEditor"
          },
          "default": ":root {\n\t--font-family: 'Open Sans', sans-serif;\n\t--font-weight-normal: 400;\n\t--font-weight-bold: 600;\n\t--font-size-body: 12px;\n\t--font-size-label: 14px;\n\t--font-size-test-notice: 12px;\n\t--font-size-input: 14px;\n\t--font-size-header: 20px;\n\t--font-size-paragraph: 14px;\n\t--font-size-link: 12px;\n\t--font-size-error: 12px;\n\t--font-size-html-h1: 28px;\n\t--font-size-html-h2: 20px;\n\t--font-size-html-h3: 16px;\n\t--font-size-html-h4: 14px;\n\t--font-size-html-h5: 12px;\n\t--font-size-html-h6: 10px;\n\t--font-size-subheader: 14px;\n\n\t/* Colors */\n\t--color-background: #fbfcfe;\n\t--color-test-notice-text: #e6a23d;\n\t--color-test-notice-bg: #fefaf6;\n\t--color-test-notice-border: #f6dcb7;\n\t--color-card-bg: #ffffff;\n\t--color-card-border: #dbdfe7;\n\t--color-card-shadow: rgba(99, 77, 255, 0.06);\n\t--color-link: #7e8186;\n\t--color-header: #525356;\n\t--color-label: #555555;\n\t--color-input-border: #dbdfe7;\n\t--color-input-text: #71747A;\n\t--color-focus-border: rgb(90, 76, 194);\n\t--color-submit-btn-bg: #ff6d5a;\n\t--color-submit-btn-text: #ffffff;\n\t--color-error: #ea1f30;\n\t--color-required: #ff6d5a;\n\t--color-clear-button-bg: #7e8186;\n\t--color-html-text: #555;\n\t--color-html-link: #ff6d5a;\n\t--color-header-subtext: #7e8186;\n\n\t/* Border Radii */\n\t--border-radius-card: 8px;\n\t--border-radius-input: 6px;\n\t--border-radius-clear-btn: 50%;\n\t--card-border-radius: 8px;\n\n\t/* Spacing */\n\t--padding-container-top: 24px;\n\t--padding-card: 24px;\n\t--padding-test-notice-vertical: 12px;\n\t--padding-test-notice-horizontal: 24px;\n\t--margin-bottom-card: 16px;\n\t--padding-form-input: 12px;\n\t--card-padding: 24px;\n\t--card-margin-bottom: 16px;\n\n\t/* Dimensions */\n\t--container-width: 448px;\n\t--submit-btn-height: 48px;\n\t--checkbox-size: 18px;\n\n\t/* Others */\n\t--box-shadow-card: 0px 4px 16px 0px var(--color-card-shadow);\n\t--opacity-placeholder: 0.5;\n}",
          "description": "Override default styling of the public form interface with CSS"
        }
      ],
      "displayOptions": {
        "show": {
          "respondWith": [
            "text",
            "returnBinary"
          ],
          "operation": [
            "completion"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "page",
      "name": "Next Form Page"
    },
    {
      "operation": "completion",
      "name": "Form Ending"
    }
  ]


node_type: nodes-base.formTrigger
package_name: n8n-nodes-base
display_name: n8n Form Trigger
description: Generate webforms in n8n and pass their responses to the workflow
category: trigger
development_style: programmatic
version: 2.2
operations: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: n8n Form Trigger node documentation
  description: Learn how to use the n8n Form Trigger node in n8n. Follow technical documentation to integrate n8n Form Trigger node into your workflows.
  contentType: [integration, reference]
  priority: critical
  ---

  # n8n Form Trigger node

  Use the n8n Form trigger to start a workflow when a user submits a form, taking the input data from the form. The node generates the form web page for you to use.

  You can add more pages to continue the form with the [n8n Form](/integrations/builtin/core-nodes/n8n-nodes-base.form.md) node.

  ## Build and test workflows

  While building or testing a workflow, use the **Test URL**. Using a test URL ensures that you can view the incoming data in the editor UI, which is useful for debugging. 

  There are two ways to test:

  - Select **Test Step**. n8n opens the form. When you submit the form, n8n runs the node, but not the rest of the workflow.
  - Select **Test Workflow**. n8n opens the form. When you submit the form, n8n runs the workflow.

  ## Production workflows

  When your workflow is ready, switch to using the **Production URL**. You can then activate your workflow, and n8n runs it automatically when a user submits the form.

  When working with a production URL, ensure that you have saved and activated the workflow. Data flowing through the Form trigger isn't visible in the editor UI with the production URL.

  ## Set default selections with query parameters

  You can set the initial values for fields by using [query parameters](https://en.wikipedia.org/wiki/Query_string#Web_forms){:target=_blank .external-link} with the initial URL provided by the n8n Form Trigger. Every [page in the form](/integrations/builtin/core-nodes/n8n-nodes-base.form.md) receives the same query parameters sent to the n8n Form Trigger URL.

  /// note | Only for production
  Query parameters are only available when using the form in production mode. n8n won't populate field values from query parameters in testing mode.
  ///

  <!-- vale from-microsoft.Percentages = NO -->
  When using query parameters, [percent-encode](https://en.wikipedia.org/wiki/Percent-encoding){:target=_blank .external-link} any field names or values that use special characters. This ensures n8n uses the initial values for the given fields. You can use tools like [URL Encode/Decode](https://www.url-encode-decode.com/) to format your query parameters using percent-encoding.

  As an example, imagine you have a form with the following properties:

  * Production URL: `https://my-account.n8n.cloud/form/my-form`
  * Fields:
  	* `name`: `Jane Doe`
  	* `email`: `jane.doe@example.com`

  With query parameters and percent-encoding, you could use the following URL to set initial field values to the data above:

  ```
  https://my-account.n8n.cloud/form/my-form?email=jane.doe%40example.com&name=Jane%20Doe
  ```

  Here, percent-encoding replaces the at-symbol (`@`) with the string `%40` and the space character (` `) with the string `%20`. This will set the initial value for these fields no matter which page of the form they appear on.
  <!-- vale from-microsoft.Percentages = YES -->

  ## Node parameters

  These are the main node configuration fields:

  ### Authentication

  - **Basic Auth**
  - **None**

  #### Using basic auth

  To configure this credential, you'll need:

  - The **Username** you use to access the app or service your HTTP Request is targeting.
  - The **Password** that goes with that username.

  ### Form URLs

  The Form Trigger node has two URLs: **Test URL** and **Production URL**. n8n displays the URLs at the top of the node panel. Select **Test URL** or **Production URL** to toggle which URL n8n displays.

  ![Screenshot of the form URLs](/_images/integrations/builtin/core-nodes/form-trigger/form-urls.png)

  - **Test URL**: n8n registers a test webhook when you select **Test Step** or **Test Workflow**, if the workflow isn't active. When you call the URL, n8n displays the data in the workflow.
  - **Production URL**: n8n registers a production webhook when you activate the workflow. When using the production URL, n8n doesn't display the data in the workflow. You can still view workflow data for a production execution. Select the **Executions** tab in the workflow, then select the workflow execution you want to view.

  ### Form Path

  Set a custom slug for the form.

  ### Form Title

  Enter the title for your form. n8n displays the **Form Title** as the webpage title and main `h1` title on the form.

  ### Form Description

  Enter the description for your form. n8n displays the **Form Description** as a subtitle below the main `h1` title on the form. Use `\n` or `<br>` to add a line break. 

  ### Form Elements

  Create the question fields for your form. Select **Add Form Element** to add a new field.

  Every field has the following settings:

  - **Field Label**: Enter the label that appears above the input field. 
  - **Element Type**: Choose from **Custom HTML**, **Date**, **Dropdown List**, **Email**, **File**, **Hidden Field**, **Number**, **Password**, **Text**, or **Textarea**.
  	- Select **Custom HTML** to insert arbitrary HTML.
  		- You can include elements like links, images, video, and more. You can't include `<script>`, `<style>`, or `<input>` elements.
  		- By default, Custom HTML fields aren't included in the node output. To include the Custom HTML content in the output, fill out the associated **Element Name** field.
      - Select **Date** to include a date picker in the form. Refer to [Date and time with Luxon](/code/cookbook/luxon.md) for more information on formatting dates.
  	- Select **Dropdown List** > **Add Field Option** to add multiple options. By default, the dropdown is single-choice. To make it multiple-choice, turn on **Multiple Choice**. 
  	- Select **Hidden Field** to include a form element without displaying it on the form. You can set a default value using the **Field Value** parameter or pass values for the field using [query parameters](#set-default-selections-with-query-parameters).
  - **Required Field**: Turn on to require users to complete this field on the form. 

  ### Respond When

  Choose when n8n sends a response to the form submission. You can respond when:

  - **Form Is Submitted**: Send a response to the user as soon as they submit the form.
  - **Workflow Finishes**: Use this if you want the workflow to complete its execution before you send a response to the user. If the workflow errors, it sends a response to the user telling them there was a problem submitting the form.

  ## Node options

  Select **Add Option** to view more configuration options: 

  - **Append n8n Attribution**: Turn off to hide the **Form automated with n8n** attribute at the bottom of the form.
  - **Form Response**: Choose how to respond when the user submits the form. 
      - **Respond With** > **Form Submitted Text**: Show a message to the user.
      - **Respond With** > **Redirect URL**: Send the user to a new page.
  - **Ignore Bots**: Turn on to ignore requests from bots like link previewers and web crawlers. 
  - **Use Workflow Timezone**: Turn on to use the timezone in the [Workflow settings](/workflows/settings.md) instead of UTC (default). This affects the value of the `submittedAt` timestamp in the node output. 

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "none",
      "options": [
        {
          "name": "Basic Auth",
          "value": "basicAuth"
        },
        {
          "name": "None",
          "value": "none"
        }
      ]
    },
    {
      "displayName": "Form Path",
      "name": "path",
      "type": "string",
      "default": "",
      "description": "The final segment of the form's URL, both for test and production",
      "required": true,
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "lte": 2.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Form Title",
      "name": "formTitle",
      "type": "string",
      "default": "",
      "description": "Shown at the top of the form",
      "required": true
    },
    {
      "displayName": "Form Description",
      "name": "formDescription",
      "type": "string",
      "default": "",
      "description": "Shown underneath the Form Title. Can be used to prompt the user on how to complete the form. Accepts HTML.",
      "typeOptions": {
        "rows": 2
      }
    },
    {
      "displayName": "Form Elements",
      "name": "formFields",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Values",
          "name": "values",
          "values": [
            {
              "displayName": "Field Name",
              "name": "fieldLabel",
              "type": "string",
              "default": "",
              "placeholder": "e.g. What is your name?",
              "description": "Label that appears above the input field",
              "required": true,
              "displayOptions": {
                "hide": {
                  "fieldType": [
                    "hiddenField",
                    "html"
                  ]
                }
              }
            },
            {
              "displayName": "Element Type",
              "name": "fieldType",
              "type": "options",
              "default": "text",
              "description": "The type of field to add to the form",
              "options": [
                {
                  "name": "Custom HTML",
                  "value": "html"
                },
                {
                  "name": "Date",
                  "value": "date"
                },
                {
                  "name": "Dropdown List",
                  "value": "dropdown"
                },
                {
                  "name": "Email",
                  "value": "email"
                },
                {
                  "name": "File",
                  "value": "file"
                },
                {
                  "name": "Hidden Field",
                  "value": "hiddenField"
                },
                {
                  "name": "Number",
                  "value": "number"
                },
                {
                  "name": "Password",
                  "value": "password"
                },
                {
                  "name": "Text",
                  "value": "text"
                },
                {
                  "name": "Textarea",
                  "value": "textarea"
                }
              ],
              "required": true
            },
            {
              "displayName": "Element Name",
              "name": "elementName",
              "type": "string",
              "default": "",
              "placeholder": "e.g. content-section",
              "description": "Optional field. It can be used to include the html in the output.",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "html"
                  ]
                }
              }
            },
            {
              "displayName": "Placeholder",
              "name": "placeholder",
              "description": "Sample text to display inside the field",
              "type": "string",
              "default": "",
              "displayOptions": {
                "hide": {
                  "fieldType": [
                    "dropdown",
                    "date",
                    "file",
                    "html",
                    "hiddenField"
                  ]
                }
              }
            },
            {
              "displayName": "Field Name",
              "name": "fieldName",
              "description": "The name of the field, used in input attributes and referenced by the workflow",
              "type": "string",
              "default": "",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "hiddenField"
                  ]
                }
              }
            },
            {
              "displayName": "Field Value",
              "name": "fieldValue",
              "description": "Input value can be set here or will be passed as a query parameter via Field Name if no value is set",
              "type": "string",
              "default": "",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "hiddenField"
                  ]
                }
              }
            },
            {
              "displayName": "Field Options",
              "name": "fieldOptions",
              "placeholder": "Add Field Option",
              "description": "List of options that can be selected from the dropdown",
              "type": "fixedCollection",
              "default": {
                "values": [
                  {
                    "option": ""
                  }
                ]
              },
              "required": true,
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "dropdown"
                  ]
                }
              },
              "typeOptions": {
                "multipleValues": true,
                "sortable": true
              },
              "options": [
                {
                  "displayName": "Values",
                  "name": "values",
                  "values": [
                    {
                      "displayName": "Option",
                      "name": "option",
                      "type": "string",
                      "default": ""
                    }
                  ]
                }
              ]
            },
            {
              "displayName": "Multiple Choice",
              "name": "multiselect",
              "type": "boolean",
              "default": false,
              "description": "Whether to allow the user to select multiple options from the dropdown list",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "dropdown"
                  ]
                }
              }
            },
            {
              "displayName": "HTML",
              "name": "html",
              "typeOptions": {
                "editor": "htmlEditor"
              },
              "type": "string",
              "noDataExpression": true,
              "default": "<!-- Your custom HTML here --->\n\n\n",
              "description": "HTML elements to display on the form page",
              "hint": "Does not accept <code>&lt;script&gt;</code>, <code>&lt;style&gt;</code> or <code>&lt;input&gt;</code> tags",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "html"
                  ]
                }
              }
            },
            {
              "displayName": "Multiple Files",
              "name": "multipleFiles",
              "type": "boolean",
              "default": true,
              "description": "Whether to allow the user to select multiple files from the file input or just one",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "file"
                  ]
                }
              }
            },
            {
              "displayName": "Accepted File Types",
              "name": "acceptFileTypes",
              "type": "string",
              "default": "",
              "description": "Comma-separated list of allowed file extensions",
              "hint": "Leave empty to allow all file types",
              "placeholder": "e.g. .jpg, .png",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "file"
                  ]
                }
              }
            },
            {
              "displayName": "The displayed date is formatted based on the locale of the user's browser",
              "name": "formatDate",
              "type": "notice",
              "default": "",
              "displayOptions": {
                "show": {
                  "fieldType": [
                    "date"
                  ]
                }
              }
            },
            {
              "displayName": "Required Field",
              "name": "requiredField",
              "type": "boolean",
              "default": false,
              "description": "Whether to require the user to enter a value for this field before submitting the form",
              "displayOptions": {
                "hide": {
                  "fieldType": [
                    "html",
                    "hiddenField"
                  ]
                }
              }
            }
          ]
        }
      ],
      "typeOptions": {
        "multipleValues": true,
        "sortable": true
      }
    },
    {
      "displayName": "Respond When",
      "name": "responseMode",
      "type": "options",
      "default": "onReceived",
      "description": "When to respond to the form submission",
      "options": [
        {
          "name": "Form Is Submitted",
          "value": "onReceived",
          "description": "As soon as this node receives the form submission"
        },
        {
          "name": "Workflow Finishes",
          "value": "lastNode",
          "description": "When the last node of the workflow is executed"
        },
        {
          "name": "Using 'Respond to Webhook' Node",
          "value": "responseNode",
          "description": "When the 'Respond to Webhook' node is executed"
        }
      ],
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "lte": 2.1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Respond When",
      "name": "responseMode",
      "type": "options",
      "default": "onReceived",
      "description": "When to respond to the form submission",
      "options": [
        {
          "name": "Form Is Submitted",
          "value": "onReceived",
          "description": "As soon as this node receives the form submission"
        },
        {
          "name": "Workflow Finishes",
          "value": "lastNode",
          "description": "When the last node of the workflow is executed"
        }
      ],
      "displayOptions": {
        "show": {
          "@version": [
            {
              "_cnd": {
                "gte": 2.2
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "In the 'Respond to Webhook' node, select 'Respond With JSON' and set the <strong>formSubmittedText</strong> key to display a custom response in the form, or the <strong>redirectURL</strong> key to redirect users to a URL",
      "name": "formNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "responseMode": [
            "responseNode"
          ]
        }
      }
    },
    {
      "displayName": "Build multi-step forms by adding a form page later in your workflow",
      "name": "addFormPage",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Append n8n Attribution",
          "name": "appendAttribution",
          "type": "boolean",
          "default": true,
          "description": "Whether to include the link “Form automated with n8n” at the bottom of the form"
        },
        {
          "displayName": "Button Label",
          "description": "The label of the submit button in the form",
          "name": "buttonLabel",
          "type": "string",
          "default": "Submit"
        },
        {
          "displayName": "Form Path",
          "name": "path",
          "type": "string",
          "default": "",
          "placeholder": "webhook",
          "required": false,
          "description": "The final segment of the form's URL, both for test and production",
          "displayOptions": {
            "show": {
              "@version": [
                {
                  "_cnd": {
                    "gte": 2.2
                  }
                }
              ]
            }
          }
        },
        {
          "displayName": "Form Response",
          "name": "respondWithOptions",
          "type": "fixedCollection",
          "placeholder": "Add option",
          "default": {
            "values": {
              "respondWith": "text"
            }
          },
          "options": [
            {
              "displayName": "Values",
              "name": "values",
              "values": [
                {
                  "displayName": "Respond With",
                  "name": "respondWith",
                  "type": "options",
                  "default": "text",
                  "options": [
                    {
                      "name": "Form Submitted Text",
                      "value": "text",
                      "description": "Show a response text to the user"
                    },
                    {
                      "name": "Redirect URL",
                      "value": "redirect",
                      "description": "Redirect the user to a URL"
                    }
                  ]
                },
                {
                  "displayName": "Text to Show",
                  "name": "formSubmittedText",
                  "description": "The text displayed to users after they fill the form. Leave it empty if don't want to show any additional text.",
                  "type": "string",
                  "default": "Your response has been recorded",
                  "displayOptions": {
                    "show": {
                      "respondWith": [
                        "text"
                      ]
                    }
                  }
                },
                {
                  "displayName": "URL to Redirect to",
                  "name": "redirectUrl",
                  "description": "The URL to redirect users to after they fill the form. Must be a valid URL.",
                  "type": "string",
                  "default": "",
                  "validateType": "url",
                  "placeholder": "e.g. http://www.n8n.io",
                  "displayOptions": {
                    "show": {
                      "respondWith": [
                        "redirect"
                      ]
                    }
                  }
                }
              ]
            }
          ],
          "displayOptions": {
            "hide": {
              "/responseMode": [
                "responseNode"
              ]
            }
          }
        },
        {
          "displayName": "Ignore Bots",
          "name": "ignoreBots",
          "type": "boolean",
          "default": false,
          "description": "Whether to ignore requests from bots like link previewers and web crawlers"
        },
        {
          "displayName": "Use Workflow Timezone",
          "name": "useWorkflowTimezone",
          "type": "boolean",
          "default": false,
          "description": "Whether to use the workflow timezone in 'submittedAt' field or UTC",
          "displayOptions": {
            "show": {
              "@version": [
                2
              ]
            }
          }
        },
        {
          "displayName": "Use Workflow Timezone",
          "name": "useWorkflowTimezone",
          "type": "boolean",
          "default": true,
          "description": "Whether to use the workflow timezone in 'submittedAt' field or UTC",
          "displayOptions": {
            "show": {
              "@version": [
                {
                  "_cnd": {
                    "gt": 2
                  }
                }
              ]
            }
          }
        },
        {
          "displayName": "Custom Form Styling",
          "name": "customCss",
          "type": "string",
          "typeOptions": {
            "rows": 10,
            "editor": "cssEditor"
          },
          "displayOptions": {
            "show": {
              "@version": [
                {
                  "_cnd": {
                    "gt": 2
                  }
                }
              ]
            }
          },
          "default": ":root {\n\t--font-family: 'Open Sans', sans-serif;\n\t--font-weight-normal: 400;\n\t--font-weight-bold: 600;\n\t--font-size-body: 12px;\n\t--font-size-label: 14px;\n\t--font-size-test-notice: 12px;\n\t--font-size-input: 14px;\n\t--font-size-header: 20px;\n\t--font-size-paragraph: 14px;\n\t--font-size-link: 12px;\n\t--font-size-error: 12px;\n\t--font-size-html-h1: 28px;\n\t--font-size-html-h2: 20px;\n\t--font-size-html-h3: 16px;\n\t--font-size-html-h4: 14px;\n\t--font-size-html-h5: 12px;\n\t--font-size-html-h6: 10px;\n\t--font-size-subheader: 14px;\n\n\t/* Colors */\n\t--color-background: #fbfcfe;\n\t--color-test-notice-text: #e6a23d;\n\t--color-test-notice-bg: #fefaf6;\n\t--color-test-notice-border: #f6dcb7;\n\t--color-card-bg: #ffffff;\n\t--color-card-border: #dbdfe7;\n\t--color-card-shadow: rgba(99, 77, 255, 0.06);\n\t--color-link: #7e8186;\n\t--color-header: #525356;\n\t--color-label: #555555;\n\t--color-input-border: #dbdfe7;\n\t--color-input-text: #71747A;\n\t--color-focus-border: rgb(90, 76, 194);\n\t--color-submit-btn-bg: #ff6d5a;\n\t--color-submit-btn-text: #ffffff;\n\t--color-error: #ea1f30;\n\t--color-required: #ff6d5a;\n\t--color-clear-button-bg: #7e8186;\n\t--color-html-text: #555;\n\t--color-html-link: #ff6d5a;\n\t--color-header-subtext: #7e8186;\n\n\t/* Border Radii */\n\t--border-radius-card: 8px;\n\t--border-radius-input: 6px;\n\t--border-radius-clear-btn: 50%;\n\t--card-border-radius: 8px;\n\n\t/* Spacing */\n\t--padding-container-top: 24px;\n\t--padding-card: 24px;\n\t--padding-test-notice-vertical: 12px;\n\t--padding-test-notice-horizontal: 24px;\n\t--margin-bottom-card: 16px;\n\t--padding-form-input: 12px;\n\t--card-padding: 24px;\n\t--card-margin-bottom: 16px;\n\n\t/* Dimensions */\n\t--container-width: 448px;\n\t--submit-btn-height: 48px;\n\t--checkbox-size: 18px;\n\n\t/* Others */\n\t--box-shadow-card: 0px 4px 16px 0px var(--color-card-shadow);\n\t--opacity-placeholder: 0.5;\n}",
          "description": "Override default styling of the public form interface with CSS"
        }
      ]
    }
  ]

credentials_required:
  [
    {
      "name": "httpBasicAuth",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "basicAuth"
          ]
        }
      }
    }
  ]


node_type: nodes-base.formIoTrigger
package_name: n8n-nodes-base
display_name: Form.io Trigger
description: Handle form.io events via webhooks
category: trigger
development_style: programmatic
version: 1
operations: []
credentials_required:
  [
  {
  "name": "formIoApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Form.io Trigger node documentation
  description: Learn how to use the Form.io Trigger node in n8n. Follow technical documentation to integrate Form.io Trigger node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Form.io Trigger node

  [Form.io](https://www.form.io/){:target=_blank .external-link} is an enterprise class combined form and API data management platform for building complex form-based business process applications.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Form.io Trigger integrations](https://n8n.io/integrations/formio-trigger/){:target=_blank .external-link} page.
  ///

properties_schema:
  [
    {
      "displayName": "Project Name or ID",
      "name": "projectId",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "required": true,
      "typeOptions": {
        "loadOptionsMethod": "getProjects"
      }
    },
    {
      "displayName": "Form Name or ID",
      "name": "formId",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "required": true,
      "typeOptions": {
        "loadOptionsDependsOn": [
          "projectId"
        ],
        "loadOptionsMethod": "getForms"
      }
    },
    {
      "displayName": "Trigger Events",
      "name": "events",
      "type": "multiOptions",
      "default": [],
      "options": [
        {
          "name": "Submission Created",
          "value": "create"
        },
        {
          "name": "Submission Updated",
          "value": "update"
        }
      ],
      "required": true
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data"
    }
  ]


node_type: nodes-base.formstackTrigger
package_name: n8n-nodes-base
display_name: Formstack Trigger
description: Starts the workflow on a Formstack form submission.
category: trigger
development_style: programmatic
version: 1
operations: []
updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Formstack Trigger node documentation
  description: Learn how to use the Formstack Trigger node in n8n. Follow technical documentation to integrate Formstack Trigger node into your workflows.
  contentType: [integration, reference]
  ---

  # Formstack Trigger node

  [Formstack](https://www.formstack.com/){:target=_blank .external-link} is a workplace productivity platform that helps organizations streamline digital work through no-code online forms, documents, and signatures.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [Formstack Trigger integrations](https://n8n.io/integrations/formstack-trigger/){:target=_blank .external-link} page.
  ///

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Form Name or ID",
      "name": "formId",
      "type": "options",
      "default": "",
      "description": "The Formstack form to monitor for new submissions. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "typeOptions": {
        "loadOptionsMethod": "getForms"
      }
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data"
    }
  ]

credentials_required:
  [
    {
      "name": "formstackApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "accessToken"
          ]
        }
      }
    },
    {
      "name": "formstackOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ]
        }
      }
    }
  ]


node_type: nodes-base.freshdesk
package_name: n8n-nodes-base
display_name: Freshdesk
description: Consume Freshdesk API
category: output
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "freshdeskApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Freshdesk node documentation
  description: Learn how to use the Freshdesk node in n8n. Follow technical documentation to integrate Freshdesk node into your workflows.
  contentType: [integration, reference]
  ---

  # Freshdesk node

  Use the Freshdesk node to automate work in Freshdesk and integrate Freshdesk with other applications. n8n has built-in support for a wide range of Freshdesk features, including creating, updating, deleting, and getting contacts and tickets.

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

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

  ## Operations

  * Contact
      * Create a new contact
      * Delete a contact
      * Get a contact
      * Get all contacts
      * Update a contact
  * Ticket
      * Create a new ticket
      * Delete a ticket
      * Get a ticket
      * Get all tickets
      * Update a ticket

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "ticket",
      "options": [
        {
          "name": "Contact",
          "value": "contact"
        },
        {
          "name": "Ticket",
          "value": "ticket"
        }
      ],
      "required": true,
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new ticket",
          "action": "Create a ticket"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a ticket",
          "action": "Delete a ticket"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a ticket",
          "action": "Get a ticket"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many tickets",
          "action": "Get many tickets"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a ticket",
          "action": "Update a ticket"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Requester Identification",
      "name": "requester",
      "type": "options",
      "default": "requesterId",
      "options": [
        {
          "name": "Email",
          "value": "email",
          "description": "Email address of the requester. If no contact exists with this email address in Freshdesk, it will be added as a new contact."
        },
        {
          "name": "Facebook ID",
          "value": "facebookId",
          "description": "Facebook ID of the requester. If no contact exists with this facebook_id, then a new contact will be created."
        },
        {
          "name": "Phone",
          "value": "phone",
          "description": "Phone number of the requester. If no contact exists with this phone number in Freshdesk, it will be added as a new contact. If the phone number is set and the email address is not, then the name attribute is mandatory."
        },
        {
          "name": "Requester ID",
          "value": "requesterId",
          "description": "User ID of the requester. For existing contacts, the requester_id can be passed instead of the requester's email."
        },
        {
          "name": "Twitter ID",
          "value": "twitterId",
          "description": "Twitter handle of the requester. If no contact exists with this handle in Freshdesk, it will be added as a new contact."
        },
        {
          "name": "Unique External ID",
          "value": "uniqueExternalId",
          "description": "External ID of the requester. If no contact exists with this external ID in Freshdesk, they will be added as a new contact."
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Value",
      "name": "requesterIdentificationValue",
      "type": "string",
      "default": "",
      "description": "Value of the identification selected",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Status",
      "name": "status",
      "type": "options",
      "default": "pending",
      "options": [
        {
          "name": "Closed",
          "value": "closed"
        },
        {
          "name": "Open",
          "value": "open"
        },
        {
          "name": "Pending",
          "value": "pending"
        },
        {
          "name": "Resolved",
          "value": "resolved"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Priority",
      "name": "priority",
      "type": "options",
      "default": "low",
      "options": [
        {
          "name": "Low",
          "value": "low"
        },
        {
          "name": "Medium",
          "value": "medium"
        },
        {
          "name": "High",
          "value": "high"
        },
        {
          "name": "Urgent",
          "value": "urgent"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Source",
      "name": "source",
      "type": "options",
      "default": "portal",
      "description": "The channel through which the ticket was created",
      "options": [
        {
          "name": "Chat",
          "value": "chat"
        },
        {
          "name": "Email",
          "value": "email"
        },
        {
          "name": "Feedback Widget",
          "value": "feedbackWidget"
        },
        {
          "name": "Mobihelp",
          "value": "mobileHelp"
        },
        {
          "name": "Outbound Email",
          "value": "OutboundEmail"
        },
        {
          "name": "Phone",
          "value": "phone"
        },
        {
          "name": "Portal",
          "value": "portal"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          },
          "description": "ID of the agent to whom the ticket has been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "CC Emails",
          "name": "ccEmails",
          "type": "string",
          "default": "",
          "description": "Separated by a comma (,) email addresses added in the 'cc' field of the incoming ticket email"
        },
        {
          "displayName": "Company Name or ID",
          "name": "company",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getCompanies"
          },
          "description": "Company ID of the requester. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above). Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "typeOptions": {
            "rows": 5
          },
          "description": "HTML content of the ticket"
        },
        {
          "displayName": "Due By",
          "name": "dueBy",
          "type": "dateTime",
          "default": "",
          "description": "Timestamp that denotes when the ticket is due to be resolved"
        },
        {
          "displayName": "Email Config ID",
          "name": "emailConfigId",
          "type": "number",
          "default": "",
          "description": "ID of email config which is used for this ticket. (i.e., support@yourcompany.com/sales@yourcompany.com) If product_id is given and email_config_id is not given, product's primary email_config_id will be set."
        },
        {
          "displayName": "FR Due By",
          "name": "frDueBy",
          "type": "dateTime",
          "default": "",
          "description": "Timestamp that denotes when the first response is due"
        },
        {
          "displayName": "Group Name or ID",
          "name": "group",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getGroups"
          },
          "description": "ID of the group to which the ticket has been assigned. The default value is the ID of the group that is associated with the given email_config_id. 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": "",
          "placeholder": "",
          "description": "Name of the requester"
        },
        {
          "displayName": "Product Name or ID",
          "name": "product",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getProducts"
          },
          "description": "ID of the product to which the ticket is associated. It will be ignored if the email_config_id attribute is set in the request. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Subject",
          "name": "subject",
          "type": "string",
          "default": "",
          "placeholder": "",
          "description": "Subject of the ticket"
        },
        {
          "displayName": "Tags",
          "name": "tags",
          "type": "string",
          "default": "",
          "description": "Separated by a comma (,) tags that have been associated with the ticket"
        },
        {
          "displayName": "Type",
          "name": "type",
          "type": "options",
          "default": "Question",
          "description": "Helps categorize the ticket according to the different kinds of issues your support team deals with",
          "options": [
            {
              "name": "Feature Request",
              "value": "Feature Request"
            },
            {
              "name": "Incident",
              "value": "Incident"
            },
            {
              "name": "Problem",
              "value": "Problem"
            },
            {
              "name": "Question",
              "value": "Question"
            },
            {
              "name": "Refund",
              "value": "Refund"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Ticket ID",
      "name": "ticketId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          },
          "description": "ID of the agent to whom the ticket has been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "CC Emails",
          "name": "ccEmails",
          "type": "string",
          "default": "",
          "description": "Separated by a comma (,) email addresses added in the 'cc' field of the incoming ticket email"
        },
        {
          "displayName": "Company Name or ID",
          "name": "company",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getCompanies"
          },
          "description": "Company ID of the requester. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above). Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Due By",
          "name": "dueBy",
          "type": "dateTime",
          "default": "",
          "description": "Timestamp that denotes when the ticket is due to be resolved"
        },
        {
          "displayName": "Email Config ID",
          "name": "emailConfigId",
          "type": "number",
          "default": "",
          "description": "ID of email config which is used for this ticket. (i.e., support@yourcompany.com/sales@yourcompany.com) If product_id is given and email_config_id is not given, product's primary email_config_id will be set."
        },
        {
          "displayName": "FR Due By",
          "name": "frDueBy",
          "type": "dateTime",
          "default": "",
          "description": "Timestamp that denotes when the first response is due"
        },
        {
          "displayName": "Group Name or ID",
          "name": "group",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getGroups"
          },
          "description": "ID of the group to which the ticket has been assigned. The default value is the ID of the group that is associated with the given email_config_id. 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": "",
          "placeholder": "",
          "description": "Name of the requester"
        },
        {
          "displayName": "Product Name or ID",
          "name": "product",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getProducts"
          },
          "description": "ID of the product to which the ticket is associated. It will be ignored if the email_config_id attribute is set in the request. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "options": [
            {
              "name": "Low",
              "value": "low"
            },
            {
              "name": "Medium",
              "value": "medium"
            },
            {
              "name": "High",
              "value": "high"
            },
            {
              "name": "Urgent",
              "value": "urgent"
            }
          ],
          "default": "low"
        },
        {
          "displayName": "Requester Identification",
          "name": "requester",
          "type": "options",
          "options": [
            {
              "name": "Email",
              "value": "email",
              "description": "Email address of the requester. If no contact exists with this email address in Freshdesk, it will be added as a new contact."
            },
            {
              "name": "Facebook ID",
              "value": "facebookId",
              "description": "Facebook ID of the requester. If no contact exists with this facebook_id, then a new contact will be created."
            },
            {
              "name": "Phone",
              "value": "phone",
              "description": "Phone number of the requester. If no contact exists with this phone number in Freshdesk, it will be added as a new contact. If the phone number is set and the email address is not, then the name attribute is mandatory."
            },
            {
              "name": "Requester ID",
              "value": "requesterId",
              "description": "User ID of the requester. For existing contacts, the requester_id can be passed instead of the requester's email."
            },
            {
              "name": "Twitter ID",
              "value": "twitterId",
              "description": "Twitter handle of the requester. If no contact exists with this handle in Freshdesk, it will be added as a new contact."
            },
            {
              "name": "Unique External ID",
              "value": "uniqueExternalId",
              "description": "External ID of the requester. If no contact exists with this external ID in Freshdesk, they will be added as a new contact."
            }
          ],
          "default": "requesterId"
        },
        {
          "displayName": "Requester Value",
          "name": "requesterIdentificationValue",
          "type": "string",
          "default": "",
          "description": "Value of the identification selected"
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "options": [
            {
              "name": "Open",
              "value": "open"
            },
            {
              "name": "Pending",
              "value": "pending"
            },
            {
              "name": "Resolved",
              "value": "resolved"
            },
            {
              "name": "Closed",
              "value": "closed"
            }
          ],
          "default": "pending"
        },
        {
          "displayName": "Source",
          "name": "source",
          "type": "options",
          "options": [
            {
              "name": "Chat",
              "value": "chat"
            },
            {
              "name": "Email",
              "value": "email"
            },
            {
              "name": "Feedback Widget",
              "value": "feedbackWidget"
            },
            {
              "name": "Mobihelp",
              "value": "mobileHelp"
            },
            {
              "name": "Outbound Email",
              "value": "OutboundEmail"
            },
            {
              "name": "Phone",
              "value": "phone"
            },
            {
              "name": "Portal",
              "value": "portal"
            }
          ],
          "default": "portal",
          "description": "The channel through which the ticket was created"
        },
        {
          "displayName": "Tags",
          "name": "tags",
          "type": "string",
          "default": "",
          "description": "Separated by a comma (,) tags that have been associated with the ticket"
        },
        {
          "displayName": "Type",
          "name": "type",
          "type": "options",
          "default": "Question",
          "description": "Helps categorize the ticket according to the different kinds of issues your support team deals with",
          "options": [
            {
              "name": "Feature Request",
              "value": "Feature Request"
            },
            {
              "name": "Incident",
              "value": "Incident"
            },
            {
              "name": "Problem",
              "value": "Problem"
            },
            {
              "name": "Question",
              "value": "Question"
            },
            {
              "name": "Refund",
              "value": "Refund"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Ticket ID",
      "name": "ticketId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "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": [
            "ticket"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 5,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 10
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Company ID",
          "name": "companyId",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Include",
          "name": "include",
          "type": "multiOptions",
          "options": [
            {
              "name": "Company",
              "value": "company"
            },
            {
              "name": "Description",
              "value": "description"
            },
            {
              "name": "Requester",
              "value": "requester"
            },
            {
              "name": "Stats",
              "value": "stats"
            }
          ],
          "default": []
        },
        {
          "displayName": "Order",
          "name": "order",
          "type": "options",
          "options": [
            {
              "name": "ASC",
              "value": "asc"
            },
            {
              "name": "DESC",
              "value": "desc"
            }
          ],
          "default": "desc",
          "description": "Order sort attribute ascending or descending"
        },
        {
          "displayName": "Order By",
          "name": "orderBy",
          "type": "options",
          "options": [
            {
              "name": "Created At",
              "value": "createdAt"
            },
            {
              "name": "Due By",
              "value": "dueBy"
            },
            {
              "name": "Updated At",
              "value": "updatedAt"
            }
          ],
          "default": "",
          "description": "Sort collection by object attribute"
        },
        {
          "displayName": "Requester Email",
          "name": "requesterEmail",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Requester ID",
          "name": "requesterId",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Updated Since",
          "name": "updatedSince",
          "type": "dateTime",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Ticket ID",
      "name": "ticketId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new contact",
          "action": "Create a contact"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a contact",
          "action": "Delete a contact"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a contact",
          "action": "Get a contact"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many contacts",
          "action": "Get many contacts"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a contact",
          "action": "Update a contact"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "contact"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "description": "Name of the contact",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "contact"
          ]
        }
      }
    },
    {
      "displayName": "Email",
      "name": "email",
      "type": "string",
      "default": "",
      "description": "Primary email address of the contact. If you want to associate additional email(s) with this contact, use the other_emails attribute.",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "contact"
          ]
        }
      }
    },
    {
      "displayName": "Contact ID",
      "name": "contactId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "contact"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Address",
          "name": "address",
          "type": "string",
          "default": "",
          "description": "Address of the contact"
        },
        {
          "displayName": "Company ID",
          "name": "company_id",
          "type": "number",
          "default": "",
          "description": "ID of the primary company to which this contact belongs"
        },
        {
          "displayName": "Custom Fields",
          "name": "customFields",
          "type": "fixedCollection",
          "placeholder": "Add Custom Field",
          "typeOptions": {
            "multipleValues": true
          },
          "description": "Key value pairs containing the name and value of the custom field. Only dates in the format YYYY-MM-DD are accepted as input for custom date fields.",
          "default": [],
          "options": [
            {
              "displayName": "Custom Field",
              "name": "customField",
              "values": [
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": "",
                  "description": "Custom Field's name"
                },
                {
                  "displayName": "Value",
                  "name": "value",
                  "type": "string",
                  "default": "",
                  "description": "Custom Field's values"
                }
              ]
            }
          ]
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "A small description of the contact"
        },
        {
          "displayName": "Email",
          "name": "email",
          "type": "string",
          "placeholder": "name@email.com",
          "default": "",
          "displayOptions": {
            "show": {
              "/operation": [
                "update"
              ]
            }
          },
          "description": "Primary email address of the contact. If you want to associate additional email(s) with this contact, use the other_emails attribute."
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": "",
          "description": "Job title of the contact"
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "string",
          "default": "",
          "description": "Language of the contact. Default language is \"en\". This attribute can only be set if the Multiple Language feature is enabled (Garden plan and above)."
        },
        {
          "displayName": "Mobile",
          "name": "mobile",
          "type": "string",
          "default": "",
          "description": "Mobile number of the contact"
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "displayOptions": {
            "show": {
              "/operation": [
                "update"
              ]
            }
          },
          "description": "Name of the contact"
        },
        {
          "displayName": "Other Companies",
          "name": "other_companies",
          "type": "string",
          "default": [],
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Company",
          "description": "Additional companies associated with the contact. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above)."
        },
        {
          "displayName": "Other Emails",
          "name": "other_emails",
          "type": "string",
          "default": [],
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Email",
          "description": "Additional emails associated with the contact"
        },
        {
          "displayName": "Phone",
          "name": "phone",
          "type": "string",
          "default": "",
          "description": "Telephone number of the contact"
        },
        {
          "displayName": "Tags",
          "name": "tags",
          "type": "string",
          "default": [],
          "typeOptions": {
            "multipleValues": true
          },
          "description": "Tags associated with this contact"
        },
        {
          "displayName": "Time Zone",
          "name": "time_zone",
          "type": "string",
          "default": "",
          "description": "Time zone of the contact. Default value is the time zone of the domain. This attribute can only be set if the Multiple Time Zone feature is enabled (Garden plan and above)."
        },
        {
          "displayName": "Twitter ID",
          "name": "twitter_id",
          "type": "string",
          "default": "",
          "description": "Twitter handle of the contact"
        },
        {
          "displayName": "Unique External ID",
          "name": "unique_external_id",
          "type": "string",
          "default": "",
          "description": "External ID of the contact"
        },
        {
          "displayName": "View All Tickets",
          "name": "view_all_tickets",
          "type": "boolean",
          "default": false,
          "description": "Whether the contact can see all the tickets that are associated with the company to which they belong"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "update"
          ],
          "resource": [
            "contact"
          ]
        }
      }
    },
    {
      "displayName": "Contact ID",
      "name": "contactId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "contact"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Contact ID",
      "name": "contactId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "contact"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Company ID",
          "name": "company_id",
          "type": "number",
          "default": ""
        },
        {
          "displayName": "Email",
          "name": "email",
          "type": "string",
          "placeholder": "name@email.com",
          "default": ""
        },
        {
          "displayName": "Mobile",
          "name": "mobile",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Phone",
          "name": "phone",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "default": "",
          "options": [
            {
              "name": "Blocked",
              "value": "blocked"
            },
            {
              "name": "Deleted",
              "value": "deleted"
            },
            {
              "name": "Unverified",
              "value": "unverified"
            },
            {
              "name": "Verified",
              "value": "verified"
            }
          ]
        },
        {
          "displayName": "Updated Since",
          "name": "updated_since",
          "type": "dateTime",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "contact"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new ticket"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a ticket"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a ticket"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many tickets"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a ticket"
    }
  ]


node_type: nodes-base.freshservice
package_name: n8n-nodes-base
display_name: Freshservice
description: Consume the Freshservice API
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "freshserviceApi",
  "required": true
  }
  ]

updated_at: 2025-06-18 20:35:38
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Freshservice node documentation
  description: Learn how to use the Freshservice node in n8n. Follow technical documentation to integrate Freshservice node into your workflows.
  contentType: [integration, reference]
  ---

  # Freshservice node

  Use the Freshservice node to automate work in Freshservice and integrate Freshservice with other applications. n8n has built-in support for a wide range of Freshdesk features, including creating, updating, deleting, and getting agent information and departments.

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

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

  ## Operations

  * Agent
      * Create an agent
      * Delete an agent
      * Retrieve an agent
      * Retrieve all agents
      * Update an agent
  * Agent Group
      * Create an agent group
      * Delete an agent group
      * Retrieve an agent group
      * Retrieve all agent groups
      * Update an agent group
  * Agent Role
      * Retrieve an agent role
      * Retrieve all agent roles
  * Announcement
      * Create an announcement
      * Delete an announcement
      * Retrieve an announcement
      * Retrieve all announcements
      * Update an announcement
  * Asset Type
      * Create an asset type
      * Delete an asset type
      * Retrieve an asset type
      * Retrieve all asset types
      * Update an asset type
  * Change
      * Create a change
      * Delete a change
      * Retrieve a change
      * Retrieve all changes
      * Update a change
  * Department
      * Create a department
      * Delete a department
      * Retrieve a department
      * Retrieve all departments
      * Update a department
  * Location
      * Create a location
      * Delete a location
      * Retrieve a location
      * Retrieve all locations
      * Update a location
  * Problem
      * Create a problem
      * Delete a problem
      * Retrieve a problem
      * Retrieve all problems
      * Update a problem
  * Product
      * Create a product
      * Delete a product
      * Retrieve a product
      * Retrieve all products
      * Update a product
  * Release
      * Create a release
      * Delete a release
      * Retrieve a release
      * Retrieve all releases
      * Update a release
  * Requester
      * Create a requester
      * Delete a requester
      * Retrieve a requester
      * Retrieve all requesters
      * Update a requester
  * Requester Group
      * Create a requester group
      * Delete a requester group
      * Retrieve a requester group
      * Retrieve all requester groups
      * Update a requester group
  * Software
      * Create a software application
      * Delete a software application
      * Retrieve a software application
      * Retrieve all software applications
      * Update a software application
  * Ticket
      * Create a ticket
      * Delete a ticket
      * Retrieve a ticket
      * Retrieve all tickets
      * Update a ticket

  ## Templates and examples

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "agent",
      "options": [
        {
          "name": "Agent",
          "value": "agent"
        },
        {
          "name": "Agent Group",
          "value": "agentGroup"
        },
        {
          "name": "Agent Role",
          "value": "agentRole"
        },
        {
          "name": "Announcement",
          "value": "announcement"
        },
        {
          "name": "Asset Type",
          "value": "assetType"
        },
        {
          "name": "Change",
          "value": "change"
        },
        {
          "name": "Department",
          "value": "department"
        },
        {
          "name": "Location",
          "value": "location"
        },
        {
          "name": "Problem",
          "value": "problem"
        },
        {
          "name": "Product",
          "value": "product"
        },
        {
          "name": "Release",
          "value": "release"
        },
        {
          "name": "Requester",
          "value": "requester"
        },
        {
          "name": "Requester Group",
          "value": "requesterGroup"
        },
        {
          "name": "Software",
          "value": "software"
        },
        {
          "name": "Ticket",
          "value": "ticket"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create an agent",
          "action": "Create an agent"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete an agent",
          "action": "Delete an agent"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve an agent",
          "action": "Get an agent"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many agents",
          "action": "Get many agents"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update an agent",
          "action": "Update an agent"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Email",
      "name": "email",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "First Name",
      "name": "firstName",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Roles",
      "name": "roles",
      "type": "fixedCollection",
      "default": {},
      "description": "Role to assign to the agent",
      "options": [
        {
          "displayName": "Role Properties",
          "name": "roleProperties",
          "values": [
            {
              "displayName": "Role Name or ID",
              "name": "role",
              "description": "Name of the role to assign to the agent. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
              "type": "options",
              "typeOptions": {
                "loadOptionsMethod": "getAgentRoles"
              },
              "required": true,
              "default": ""
            },
            {
              "displayName": "Scope",
              "name": "assignment_scope",
              "description": "Scope in which the agent may use the permissions granted by the role",
              "type": "options",
              "options": [
                {
                  "name": "Entire Helpdesk",
                  "value": "entire_helpdesk"
                },
                {
                  "name": "Member Groups",
                  "value": "member_groups"
                },
                {
                  "name": "Specified Groups",
                  "value": "specified_groups"
                },
                {
                  "name": "Assigned Items",
                  "value": "assigned_items"
                }
              ],
              "required": true,
              "default": "specified_groups"
            },
            {
              "displayName": "Group Names or IDs",
              "name": "groups",
              "description": "Groups in which the permissions granted by the role apply. Required only when Scope is Specified Groups - ignored otherwise. 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>.",
              "type": "multiOptions",
              "typeOptions": {
                "loadOptionsMethod": "getAgentGroups"
              },
              "default": []
            }
          ]
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Address",
          "name": "address",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Background Information",
          "name": "background_information",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Department Names or IDs",
          "name": "department_ids",
          "type": "multiOptions",
          "default": [],
          "description": "IDs of the departments to which the agent belongs. 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": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "options",
          "default": "",
          "options": [
            {
              "value": "en",
              "name": "English"
            },
            {
              "value": "ar",
              "name": "Arabic"
            },
            {
              "value": "ca",
              "name": "Catalan"
            },
            {
              "value": "cs",
              "name": "Czech"
            },
            {
              "value": "cy-GB",
              "name": "Welsh"
            },
            {
              "value": "da",
              "name": "Danish"
            },
            {
              "value": "de",
              "name": "German"
            },
            {
              "value": "es",
              "name": "Spanish"
            },
            {
              "value": "es-LA",
              "name": "Spanish (Latin America)"
            },
            {
              "value": "et",
              "name": "Estonian"
            },
            {
              "value": "fi",
              "name": "Finnish"
            },
            {
              "value": "fr",
              "name": "French"
            },
            {
              "value": "he",
              "name": "Hebrew"
            },
            {
              "value": "hu",
              "name": "Hungarian"
            },
            {
              "value": "id",
              "name": "Indonesian"
            },
            {
              "value": "it",
              "name": "Italian"
            },
            {
              "value": "ja-JP",
              "name": "Japanese"
            },
            {
              "value": "ko",
              "name": "Korean"
            },
            {
              "value": "LV",
              "name": "Latvian"
            },
            {
              "value": "nb-NO",
              "name": "Norwegian"
            },
            {
              "value": "nl",
              "name": "Dutch"
            },
            {
              "value": "pl",
              "name": "Polish"
            },
            {
              "value": "pt",
              "name": "Portuguese"
            },
            {
              "value": "pt-BR",
              "name": "Portuguese (Brazil)"
            },
            {
              "value": "pt-PT",
              "name": "Portuguese (Portugal)"
            },
            {
              "value": "ru-RU",
              "name": "Russian"
            },
            {
              "value": "sk",
              "name": "Slovak"
            },
            {
              "value": "sk-SK",
              "name": "Slovak"
            },
            {
              "value": "sl",
              "name": "Slovenian"
            },
            {
              "value": "sv-SE",
              "name": "Swedish"
            },
            {
              "value": "th",
              "name": "Thai"
            },
            {
              "value": "tr",
              "name": "Turkish"
            },
            {
              "value": "UK",
              "name": "Ukrainian"
            },
            {
              "value": "vi",
              "name": "Vietnamese"
            },
            {
              "value": "zh-CN",
              "name": "Chinese (Simplified)"
            },
            {
              "value": "zh-TW",
              "name": "Chinese (Traditional)"
            }
          ]
        },
        {
          "displayName": "Last Name",
          "name": "last_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Location Name or ID",
          "name": "location_id",
          "type": "options",
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getLocations"
          }
        },
        {
          "displayName": "Group Names or IDs",
          "name": "member_of",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of the groups that the agent is a member of. 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": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobile_phone_number",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Observer of Group Names/IDs",
          "name": "observer_of",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of the groups that the agent is an observer of. 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": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Scoreboard Level ID",
          "name": "scoreboard_level_id",
          "type": "options",
          "description": "ID of the level of the agent in the Arcade",
          "default": 1,
          "options": [
            {
              "name": "Beginner",
              "value": 1
            },
            {
              "name": "Intermediate",
              "value": 2
            },
            {
              "name": "Professional",
              "value": 3
            },
            {
              "name": "Expert",
              "value": 4
            },
            {
              "name": "Master",
              "value": 5
            },
            {
              "name": "Guru",
              "value": 6
            }
          ]
        },
        {
          "displayName": "Time Format",
          "name": "time_format",
          "type": "options",
          "default": "12h",
          "options": [
            {
              "name": "12-Hour Format",
              "value": "12h"
            },
            {
              "name": "24-Hour Format",
              "value": "24h"
            }
          ]
        },
        {
          "displayName": "Work Phone",
          "name": "work_phone_number",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Agent ID",
      "name": "agentId",
      "type": "string",
      "default": "",
      "description": "ID of the agent to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Agent ID",
      "name": "agentId",
      "type": "string",
      "default": "",
      "description": "ID of the agent to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "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": [
            "agent"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department to which the agent belongs. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Email",
          "name": "email",
          "type": "string",
          "placeholder": "name@email.com",
          "default": ""
        },
        {
          "displayName": "First Name",
          "name": "first_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "options",
          "default": "",
          "options": [
            {
              "value": "en",
              "name": "English"
            },
            {
              "value": "ar",
              "name": "Arabic"
            },
            {
              "value": "ca",
              "name": "Catalan"
            },
            {
              "value": "cs",
              "name": "Czech"
            },
            {
              "value": "cy-GB",
              "name": "Welsh"
            },
            {
              "value": "da",
              "name": "Danish"
            },
            {
              "value": "de",
              "name": "German"
            },
            {
              "value": "es",
              "name": "Spanish"
            },
            {
              "value": "es-LA",
              "name": "Spanish (Latin America)"
            },
            {
              "value": "et",
              "name": "Estonian"
            },
            {
              "value": "fi",
              "name": "Finnish"
            },
            {
              "value": "fr",
              "name": "French"
            },
            {
              "value": "he",
              "name": "Hebrew"
            },
            {
              "value": "hu",
              "name": "Hungarian"
            },
            {
              "value": "id",
              "name": "Indonesian"
            },
            {
              "value": "it",
              "name": "Italian"
            },
            {
              "value": "ja-JP",
              "name": "Japanese"
            },
            {
              "value": "ko",
              "name": "Korean"
            },
            {
              "value": "LV",
              "name": "Latvian"
            },
            {
              "value": "nb-NO",
              "name": "Norwegian"
            },
            {
              "value": "nl",
              "name": "Dutch"
            },
            {
              "value": "pl",
              "name": "Polish"
            },
            {
              "value": "pt",
              "name": "Portuguese"
            },
            {
              "value": "pt-BR",
              "name": "Portuguese (Brazil)"
            },
            {
              "value": "pt-PT",
              "name": "Portuguese (Portugal)"
            },
            {
              "value": "ru-RU",
              "name": "Russian"
            },
            {
              "value": "sk",
              "name": "Slovak"
            },
            {
              "value": "sk-SK",
              "name": "Slovak"
            },
            {
              "value": "sl",
              "name": "Slovenian"
            },
            {
              "value": "sv-SE",
              "name": "Swedish"
            },
            {
              "value": "th",
              "name": "Thai"
            },
            {
              "value": "tr",
              "name": "Turkish"
            },
            {
              "value": "UK",
              "name": "Ukrainian"
            },
            {
              "value": "vi",
              "name": "Vietnamese"
            },
            {
              "value": "zh-CN",
              "name": "Chinese (Simplified)"
            },
            {
              "value": "zh-TW",
              "name": "Chinese (Traditional)"
            }
          ]
        },
        {
          "displayName": "Last Name",
          "name": "last_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Location Name or ID",
          "name": "location_id",
          "type": "options",
          "default": "",
          "description": "Choose from the list or specify an ID. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getLocations"
          }
        },
        {
          "displayName": "Mobile Phone Number",
          "name": "mobile_phone_number",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Work Phone Number",
          "name": "work_phone_number",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Agent ID",
      "name": "agentId",
      "type": "string",
      "default": "",
      "description": "ID of the agent to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Address",
          "name": "address",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Background Information",
          "name": "background_information",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Department Names or IDs",
          "name": "department_ids",
          "type": "multiOptions",
          "default": [],
          "description": "IDs of the departments to which the agent belongs. 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": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Email",
          "name": "email",
          "type": "string",
          "placeholder": "name@email.com",
          "default": ""
        },
        {
          "displayName": "First Name",
          "name": "first_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "options",
          "default": "",
          "options": [
            {
              "value": "en",
              "name": "English"
            },
            {
              "value": "ar",
              "name": "Arabic"
            },
            {
              "value": "ca",
              "name": "Catalan"
            },
            {
              "value": "cs",
              "name": "Czech"
            },
            {
              "value": "cy-GB",
              "name": "Welsh"
            },
            {
              "value": "da",
              "name": "Danish"
            },
            {
              "value": "de",
              "name": "German"
            },
            {
              "value": "es",
              "name": "Spanish"
            },
            {
              "value": "es-LA",
              "name": "Spanish (Latin America)"
            },
            {
              "value": "et",
              "name": "Estonian"
            },
            {
              "value": "fi",
              "name": "Finnish"
            },
            {
              "value": "fr",
              "name": "French"
            },
            {
              "value": "he",
              "name": "Hebrew"
            },
            {
              "value": "hu",
              "name": "Hungarian"
            },
            {
              "value": "id",
              "name": "Indonesian"
            },
            {
              "value": "it",
              "name": "Italian"
            },
            {
              "value": "ja-JP",
              "name": "Japanese"
            },
            {
              "value": "ko",
              "name": "Korean"
            },
            {
              "value": "LV",
              "name": "Latvian"
            },
            {
              "value": "nb-NO",
              "name": "Norwegian"
            },
            {
              "value": "nl",
              "name": "Dutch"
            },
            {
              "value": "pl",
              "name": "Polish"
            },
            {
              "value": "pt",
              "name": "Portuguese"
            },
            {
              "value": "pt-BR",
              "name": "Portuguese (Brazil)"
            },
            {
              "value": "pt-PT",
              "name": "Portuguese (Portugal)"
            },
            {
              "value": "ru-RU",
              "name": "Russian"
            },
            {
              "value": "sk",
              "name": "Slovak"
            },
            {
              "value": "sk-SK",
              "name": "Slovak"
            },
            {
              "value": "sl",
              "name": "Slovenian"
            },
            {
              "value": "sv-SE",
              "name": "Swedish"
            },
            {
              "value": "th",
              "name": "Thai"
            },
            {
              "value": "tr",
              "name": "Turkish"
            },
            {
              "value": "UK",
              "name": "Ukrainian"
            },
            {
              "value": "vi",
              "name": "Vietnamese"
            },
            {
              "value": "zh-CN",
              "name": "Chinese (Simplified)"
            },
            {
              "value": "zh-TW",
              "name": "Chinese (Traditional)"
            }
          ]
        },
        {
          "displayName": "Last Name",
          "name": "last_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Location Name or ID",
          "name": "location_id",
          "type": "options",
          "default": "",
          "description": "Choose from the list or specify an ID. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getLocations"
          }
        },
        {
          "displayName": "Group Names or IDs",
          "name": "member_of",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of the groups that the agent is a member of. 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": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobile_phone_number",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Observer of Group Names/IDs",
          "name": "observer_of",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of the groups that the agent is an observer of. 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": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Scoreboard Level ID",
          "name": "scoreboard_level_id",
          "type": "options",
          "description": "ID of the level of the agent in the Arcade",
          "default": 1,
          "options": [
            {
              "name": "Beginner",
              "value": 1
            },
            {
              "name": "Intermediate",
              "value": 2
            },
            {
              "name": "Professional",
              "value": 3
            },
            {
              "name": "Expert",
              "value": 4
            },
            {
              "name": "Master",
              "value": 5
            },
            {
              "name": "Guru",
              "value": 6
            }
          ]
        },
        {
          "displayName": "Time Format",
          "name": "time_format",
          "type": "options",
          "default": "12h",
          "options": [
            {
              "name": "12-Hour Format",
              "value": "12h"
            },
            {
              "name": "24-Hour Format",
              "value": "24h"
            }
          ]
        },
        {
          "displayName": "Work Phone",
          "name": "work_phone_number",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agent"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create an agent group",
          "action": "Create an agent group"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete an agent group",
          "action": "Delete an agent group"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve an agent group",
          "action": "Get an agent group"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many agent groups",
          "action": "Get many agent groups"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update an agent group",
          "action": "Update an agent group"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Escalate to Agent Name or ID",
          "name": "escalate_to",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          },
          "description": "ID of the user to whom an escalation email is sent if a ticket in this group is unassigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Member Names or IDs",
          "name": "members",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of agents who are members of this group. 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": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Observer Names or IDs",
          "name": "observers",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated agent IDs who are observers of this group. 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": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Unassigned For",
          "name": "unassigned_for",
          "description": "Time after which an escalation email is sent if a ticket in the group remains unassigned",
          "type": "options",
          "default": "30m",
          "options": [
            {
              "name": "1 Day",
              "value": "1d"
            },
            {
              "name": "1 Hour",
              "value": "1h"
            },
            {
              "name": "12 Hours",
              "value": "12h"
            },
            {
              "name": "2 Days",
              "value": "2d"
            },
            {
              "name": "2 Hours",
              "value": "2h"
            },
            {
              "name": "3 Days",
              "value": "3d"
            },
            {
              "name": "30 Minutes",
              "value": "30m"
            },
            {
              "name": "8 Hours",
              "value": "8h"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Agent Group ID",
      "name": "agentGroupId",
      "type": "string",
      "default": "",
      "description": "ID of the agent group to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Agent Group ID",
      "name": "agentGroupId",
      "type": "string",
      "default": "",
      "description": "ID of the agent group to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "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": [
            "agentGroup"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Agent Group ID",
      "name": "agentGroupId",
      "type": "string",
      "default": "",
      "description": "ID of the agent group to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Escalate to Agent Name or ID",
          "name": "escalate_to",
          "type": "options",
          "default": "",
          "description": "ID of the agent to whom an escalation email is sent if a ticket in this group is unassigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Member Names or IDs",
          "name": "members",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of agents who are members of this group. 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": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Observer Names or IDs",
          "name": "observers",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated agent user IDs who are observers of this group. 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": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Unassigned For",
          "name": "unassigned_for",
          "description": "Time after which an escalation email is sent if a ticket in the group remains unassigned",
          "type": "options",
          "default": "30m",
          "options": [
            {
              "name": "1 Day",
              "value": "1d"
            },
            {
              "name": "1 Hour",
              "value": "1h"
            },
            {
              "name": "12 Hours",
              "value": "12h"
            },
            {
              "name": "2 Days",
              "value": "2d"
            },
            {
              "name": "2 Hours",
              "value": "2h"
            },
            {
              "name": "3 Days",
              "value": "3d"
            },
            {
              "name": "30 Minutes",
              "value": "30m"
            },
            {
              "name": "8 Hours",
              "value": "8h"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agentGroup"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve an agent role",
          "action": "Get an agent role"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many agent roles",
          "action": "Get many agent roles"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "agentRole"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Agent Role ID",
      "name": "agentRoleId",
      "type": "string",
      "default": "",
      "description": "ID of the agent role to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "agentRole"
          ],
          "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": [
            "agentRole"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "agentRole"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create an announcement",
          "action": "Create an announcement"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete an announcement",
          "action": "Delete an announcement"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve an announcement",
          "action": "Get an announcement"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many announcements",
          "action": "Get many announcements"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update an announcement",
          "action": "Update an announcement"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "bodyHtml",
      "type": "string",
      "default": "",
      "description": "HTML supported",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Visibility",
      "name": "visibility",
      "type": "options",
      "default": "everyone",
      "options": [
        {
          "name": "Agents Only",
          "value": "agents_only"
        },
        {
          "name": "Agents and Groups",
          "value": "grouped_visibility"
        },
        {
          "name": "Everyone",
          "value": "everyone"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Visible From",
      "name": "visibleFrom",
      "type": "dateTime",
      "default": "",
      "description": "Timestamp at which announcement becomes active",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Additional Emails",
          "name": "additional_emails",
          "type": "string",
          "default": "",
          "description": "Comma-separated additional email addresses to which the announcement needs to be sent"
        },
        {
          "displayName": "Department Names or IDs",
          "name": "departments",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of departments that may view this announcement. 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": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Visible From",
          "name": "visible_from",
          "description": "Timestamp at which announcement is active",
          "type": "dateTime",
          "default": ""
        },
        {
          "displayName": "Visible Until",
          "name": "visible_till",
          "description": "Timestamp until which announcement is active",
          "type": "dateTime",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Announcement ID",
      "name": "announcementId",
      "type": "string",
      "default": "",
      "description": "ID of the announcement to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Announcement ID",
      "name": "announcementId",
      "type": "string",
      "default": "",
      "description": "ID of the announcement to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "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": [
            "announcement"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Announcement ID",
      "name": "announcementId",
      "type": "string",
      "default": "",
      "description": "ID of the announcement to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Additional Emails",
          "name": "additional_emails",
          "type": "string",
          "default": "",
          "description": "Comma-separated additional email addresses to which the announcement needs to be sent"
        },
        {
          "displayName": "Body",
          "name": "body_html",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Department Names or IDs",
          "name": "departments",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of departments that may view this announcement. 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": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Visibility",
          "name": "visibility",
          "type": "options",
          "default": "everyone",
          "options": [
            {
              "name": "Agents Only",
              "value": "agents_only"
            },
            {
              "name": "Agents and Groups",
              "value": "grouped_visibility"
            },
            {
              "name": "Everyone",
              "value": "everyone"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "announcement"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create an asset type",
          "action": "Create an asset type"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete an asset type",
          "action": "Delete an asset type"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve an asset type",
          "action": "Get an asset type"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many asset types",
          "action": "Get many asset types"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update an asset type",
          "action": "Update an asset type"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Parent Asset Type Name or ID",
          "name": "parent_asset_type_id",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getAssetTypes"
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Asset Type ID",
      "name": "assetTypeId",
      "type": "string",
      "default": "",
      "description": "ID of the asset type to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Asset Type ID",
      "name": "assetTypeId",
      "type": "string",
      "default": "",
      "description": "ID of the asset type to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "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": [
            "assetType"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Asset Type ID",
      "name": "assetTypeId",
      "type": "string",
      "default": "",
      "description": "ID of the asset type to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "assetType"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a change",
          "action": "Create a change"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a change",
          "action": "Delete a change"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a change",
          "action": "Get a change"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many changes",
          "action": "Get many changes"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a change",
          "action": "Update a change"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Requester Name or ID",
      "name": "requesterId",
      "type": "options",
      "default": "",
      "description": "ID of the requester of the change. Choose from the list or specify an ID. You can also specify the ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getRequesters"
      }
    },
    {
      "displayName": "Subject",
      "name": "subject",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Planned Start Date",
      "name": "plannedStartDate",
      "type": "dateTime",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Planned End Date",
      "name": "plannedEndDate",
      "type": "dateTime",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent to whom the change is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Change Type",
          "name": "change_type",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Minor",
              "value": 1
            },
            {
              "name": "Standard",
              "value": 2
            },
            {
              "name": "Major",
              "value": 3
            },
            {
              "name": "Emergency",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department requesting the change. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent group to which the change is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Risk",
          "name": "risk",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Very High",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Open",
              "value": 1
            },
            {
              "name": "Planning",
              "value": 2
            },
            {
              "name": "Approval",
              "value": 3
            },
            {
              "name": "Pending Release",
              "value": 4
            },
            {
              "name": "Pending Review",
              "value": 5
            },
            {
              "name": "Closed",
              "value": 6
            }
          ]
        },
        {
          "displayName": "Subject",
          "name": "subject",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Change ID",
      "name": "changeId",
      "type": "string",
      "default": "",
      "description": "ID of the change to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Change ID",
      "name": "changeId",
      "type": "string",
      "default": "",
      "description": "ID of the change to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "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": [
            "change"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Predefined Filters",
          "name": "filter",
          "type": "options",
          "default": "my_open",
          "options": [
            {
              "name": "Closed",
              "value": "closed"
            },
            {
              "name": "My Open",
              "value": "my_open"
            },
            {
              "name": "Release Requested",
              "value": "release_requested"
            },
            {
              "name": "Requester ID",
              "value": "requester_id"
            },
            {
              "name": "Unassigned",
              "value": "unassigned"
            }
          ]
        },
        {
          "displayName": "Sort Order",
          "name": "sort_by",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc"
            },
            {
              "name": "Descending",
              "value": "desc"
            }
          ],
          "default": "asc"
        },
        {
          "displayName": "Updated Since",
          "name": "updated_since",
          "type": "dateTime",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Change ID",
      "name": "changeId",
      "type": "string",
      "default": "",
      "description": "ID of the change to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent to whom the change is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Change Type",
          "name": "change_type",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Minor",
              "value": 1
            },
            {
              "name": "Standard",
              "value": 2
            },
            {
              "name": "Major",
              "value": 3
            },
            {
              "name": "Emergency",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department requesting the change. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent group to which the change is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "description": "Impact of the change",
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Requester Name or ID",
          "name": "requester_id",
          "type": "options",
          "default": "",
          "description": "ID of the requester of the change. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getRequesters"
          }
        },
        {
          "displayName": "Risk",
          "name": "risk",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Very High",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Open",
              "value": 1
            },
            {
              "name": "Planning",
              "value": 2
            },
            {
              "name": "Approval",
              "value": 3
            },
            {
              "name": "Pending Release",
              "value": 4
            },
            {
              "name": "Pending Review",
              "value": 5
            },
            {
              "name": "Closed",
              "value": 6
            }
          ]
        },
        {
          "displayName": "Subject",
          "name": "subject",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "change"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a department",
          "action": "Create a department"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a department",
          "action": "Delete a department"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a department",
          "action": "Get a department"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many departments",
          "action": "Get many departments"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a department",
          "action": "Update a department"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Domains",
          "name": "domains",
          "type": "string",
          "default": "",
          "description": "Comma-separated email domains associated with the department"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Department ID",
      "name": "departmentId",
      "type": "string",
      "default": "",
      "description": "ID of the department to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Department ID",
      "name": "departmentId",
      "type": "string",
      "default": "",
      "description": "ID of the department to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "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": [
            "department"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "Name of the department"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Department ID",
      "name": "departmentId",
      "type": "string",
      "default": "",
      "description": "ID of the department to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Domains",
          "name": "domains",
          "type": "string",
          "default": "",
          "description": "Comma-separated email domains associated with the department"
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "department"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a location",
          "action": "Create a location"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a location",
          "action": "Delete a location"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a location",
          "action": "Get a location"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many locations",
          "action": "Get many locations"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a location",
          "action": "Update a location"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "description": "Name of the location",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Address",
          "name": "address",
          "placeholder": "Add Address Fields",
          "type": "fixedCollection",
          "default": {},
          "options": [
            {
              "displayName": "Address Details",
              "name": "addressFields",
              "values": [
                {
                  "displayName": "Line 1",
                  "name": "line1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line 2",
                  "name": "line2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "City",
                  "name": "city",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Country",
                  "name": "country",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "State",
                  "name": "state",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Zip Code",
                  "name": "zipcode",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Location ID",
      "name": "locationId",
      "type": "string",
      "default": "",
      "description": "ID of the location to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Location ID",
      "name": "locationId",
      "type": "string",
      "default": "",
      "description": "ID of the location to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "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": [
            "location"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Location ID",
      "name": "locationId",
      "type": "string",
      "default": "",
      "description": "ID of the location to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Address",
          "name": "address",
          "placeholder": "Add Address Fields",
          "type": "fixedCollection",
          "default": {},
          "options": [
            {
              "displayName": "Address Details",
              "name": "addressFields",
              "values": [
                {
                  "displayName": "Line 1",
                  "name": "line1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line 2",
                  "name": "line2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "City",
                  "name": "city",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Country",
                  "name": "country",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "State",
                  "name": "state",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Zip Code",
                  "name": "zipcode",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "location"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a problem",
          "action": "Create a problem"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a problem",
          "action": "Delete a problem"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a problem",
          "action": "Get a problem"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many problems",
          "action": "Get many problems"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a problem",
          "action": "Update a problem"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Subject",
      "name": "subject",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Requester Name or ID",
      "name": "requesterId",
      "type": "options",
      "default": "",
      "description": "ID of the initiator of the problem. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getRequesters"
      }
    },
    {
      "displayName": "Due By",
      "name": "dueBy",
      "type": "dateTime",
      "default": "",
      "description": "Date when the problem is due to be solved",
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent to whom the problem is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department initiating the problem. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "description": "HTML supported",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent group to which the problem is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Open",
              "value": 1
            },
            {
              "name": "Change Requested",
              "value": 2
            },
            {
              "name": "Closed",
              "value": 3
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Problem ID",
      "name": "problemId",
      "type": "string",
      "default": "",
      "description": "ID of the problem to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Problem ID",
      "name": "problemId",
      "type": "string",
      "default": "",
      "description": "ID of the problem to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "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": [
            "problem"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Problem ID",
      "name": "problemId",
      "type": "string",
      "default": "",
      "description": "ID of the problem to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent to whom the problem is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department initiating the problem. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Due By",
          "name": "due_by",
          "description": "Date when the problem is due to be solved",
          "type": "dateTime",
          "default": ""
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent group to which the problem is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Requester Name or ID",
          "name": "requester_id",
          "type": "options",
          "default": "",
          "description": "ID of the initiator of the problem. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getRequesters"
          }
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Open",
              "value": 1
            },
            {
              "name": "Change Requested",
              "value": 2
            },
            {
              "name": "Closed",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Subject",
          "name": "subject",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "problem"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a product",
          "action": "Create a product"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a product",
          "action": "Delete a product"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a product",
          "action": "Get a product"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many products",
          "action": "Get many products"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a product",
          "action": "Update a product"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Asset Type Name or ID",
      "name": "assetTypeId",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getAssetTypes"
      }
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Manufacturer",
          "name": "manufacturer",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Mode of Procurement",
          "name": "mode_of_procurement",
          "type": "options",
          "default": "Buy",
          "options": [
            {
              "name": "Buy",
              "value": "Buy"
            },
            {
              "name": "Lease",
              "value": "Lease"
            },
            {
              "name": "Both",
              "value": "Both"
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": "In Production",
          "options": [
            {
              "name": "In Production",
              "value": "In Production"
            },
            {
              "name": "In Pipeline",
              "value": "In Pipeline"
            },
            {
              "name": "Retired",
              "value": "Retired"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Product ID",
      "name": "productId",
      "type": "string",
      "default": "",
      "description": "ID of the product to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Product ID",
      "name": "productId",
      "type": "string",
      "default": "",
      "description": "ID of the product to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "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": [
            "product"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Product ID",
      "name": "productId",
      "type": "string",
      "default": "",
      "description": "ID of the product to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Asset Type Name or ID",
          "name": "asset_type_id",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getAssetTypes"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Manufacturer",
          "name": "manufacturer",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Mode of Procurement",
          "name": "mode_of_procurement",
          "type": "options",
          "default": "Buy",
          "options": [
            {
              "name": "Buy",
              "value": "Buy"
            },
            {
              "name": "Lease",
              "value": "Lease"
            },
            {
              "name": "Both",
              "value": "Both"
            }
          ]
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": "In Production",
          "options": [
            {
              "name": "In Production",
              "value": "In Production"
            },
            {
              "name": "In Pipeline",
              "value": "In Pipeline"
            },
            {
              "name": "Retired",
              "value": "Retired"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "product"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a release",
          "action": "Create a release"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a release",
          "action": "Delete a release"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a release",
          "action": "Get a release"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many releases",
          "action": "Get many releases"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a release",
          "action": "Update a release"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Subject",
      "name": "subject",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Release Type",
      "name": "releaseType",
      "type": "options",
      "default": 1,
      "options": [
        {
          "name": "Minor",
          "value": 1
        },
        {
          "name": "Standard",
          "value": 2
        },
        {
          "name": "Major",
          "value": 3
        },
        {
          "name": "Emergency",
          "value": 4
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Priority",
      "name": "priority",
      "type": "options",
      "default": 1,
      "options": [
        {
          "name": "Low",
          "value": 1
        },
        {
          "name": "Medium",
          "value": 2
        },
        {
          "name": "High",
          "value": 3
        },
        {
          "name": "Urgent",
          "value": 4
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Status",
      "name": "status",
      "type": "options",
      "default": 1,
      "options": [
        {
          "name": "Open",
          "value": 1
        },
        {
          "name": "On Hold",
          "value": 2
        },
        {
          "name": "In Progress",
          "value": 3
        },
        {
          "name": "Incomplete",
          "value": 4
        },
        {
          "name": "Completed",
          "value": 5
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Planned Start Date",
      "name": "plannedStartDate",
      "type": "dateTime",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Planned End Date",
      "name": "plannedEndDate",
      "type": "dateTime",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department initiating the release. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "description": "HTML supported",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent group to which the release is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Release ID",
      "name": "releaseId",
      "type": "string",
      "default": "",
      "description": "ID of the release to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Release ID",
      "name": "releaseId",
      "type": "string",
      "default": "",
      "description": "ID of the release to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "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": [
            "release"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Release ID",
      "name": "releaseId",
      "type": "string",
      "default": "",
      "description": "ID of the release to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department initiating the release. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent group to which the release is assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Release Type",
          "name": "release_type",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Minor",
              "value": 1
            },
            {
              "name": "Standard",
              "value": 2
            },
            {
              "name": "Major",
              "value": 3
            },
            {
              "name": "Emergency",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Open",
              "value": 1
            },
            {
              "name": "On Hold",
              "value": 2
            },
            {
              "name": "In Progress",
              "value": 3
            },
            {
              "name": "Incomplete",
              "value": 4
            },
            {
              "name": "Completed",
              "value": 5
            }
          ]
        },
        {
          "displayName": "Subject",
          "name": "subject",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a requester",
          "action": "Create a requester"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a requester",
          "action": "Delete a requester"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a requester",
          "action": "Get a requester"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many requesters",
          "action": "Get many requesters"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a requester",
          "action": "Update a requester"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "First Name",
      "name": "firstName",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Primary Email",
      "name": "primaryEmail",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Address",
          "name": "address",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Background Information",
          "name": "background_information",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Department Names or IDs",
          "name": "department_ids",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of the departments associated with the requester. 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": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "options",
          "default": "",
          "options": [
            {
              "value": "en",
              "name": "English"
            },
            {
              "value": "ar",
              "name": "Arabic"
            },
            {
              "value": "ca",
              "name": "Catalan"
            },
            {
              "value": "cs",
              "name": "Czech"
            },
            {
              "value": "cy-GB",
              "name": "Welsh"
            },
            {
              "value": "da",
              "name": "Danish"
            },
            {
              "value": "de",
              "name": "German"
            },
            {
              "value": "es",
              "name": "Spanish"
            },
            {
              "value": "es-LA",
              "name": "Spanish (Latin America)"
            },
            {
              "value": "et",
              "name": "Estonian"
            },
            {
              "value": "fi",
              "name": "Finnish"
            },
            {
              "value": "fr",
              "name": "French"
            },
            {
              "value": "he",
              "name": "Hebrew"
            },
            {
              "value": "hu",
              "name": "Hungarian"
            },
            {
              "value": "id",
              "name": "Indonesian"
            },
            {
              "value": "it",
              "name": "Italian"
            },
            {
              "value": "ja-JP",
              "name": "Japanese"
            },
            {
              "value": "ko",
              "name": "Korean"
            },
            {
              "value": "LV",
              "name": "Latvian"
            },
            {
              "value": "nb-NO",
              "name": "Norwegian"
            },
            {
              "value": "nl",
              "name": "Dutch"
            },
            {
              "value": "pl",
              "name": "Polish"
            },
            {
              "value": "pt",
              "name": "Portuguese"
            },
            {
              "value": "pt-BR",
              "name": "Portuguese (Brazil)"
            },
            {
              "value": "pt-PT",
              "name": "Portuguese (Portugal)"
            },
            {
              "value": "ru-RU",
              "name": "Russian"
            },
            {
              "value": "sk",
              "name": "Slovak"
            },
            {
              "value": "sk-SK",
              "name": "Slovak"
            },
            {
              "value": "sl",
              "name": "Slovenian"
            },
            {
              "value": "sv-SE",
              "name": "Swedish"
            },
            {
              "value": "th",
              "name": "Thai"
            },
            {
              "value": "tr",
              "name": "Turkish"
            },
            {
              "value": "UK",
              "name": "Ukrainian"
            },
            {
              "value": "vi",
              "name": "Vietnamese"
            },
            {
              "value": "zh-CN",
              "name": "Chinese (Simplified)"
            },
            {
              "value": "zh-TW",
              "name": "Chinese (Traditional)"
            }
          ]
        },
        {
          "displayName": "Last Name",
          "name": "last_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Location Name or ID",
          "name": "location_id",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getLocations"
          }
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobile_phone_number",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Secondary Emails",
          "name": "secondary_emails",
          "type": "string",
          "default": "",
          "description": "Comma-separated secondary emails associated with the requester"
        },
        {
          "displayName": "Time Format",
          "name": "time_format",
          "type": "options",
          "default": "12h",
          "options": [
            {
              "name": "12-Hour Format",
              "value": "12h"
            },
            {
              "name": "24-Hour Format",
              "value": "24h"
            }
          ]
        },
        {
          "displayName": "Work Phone",
          "name": "work_phone_number",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Requester ID",
      "name": "requesterId",
      "type": "string",
      "default": "",
      "description": "ID of the requester to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Requester ID",
      "name": "requesterId",
      "type": "string",
      "default": "",
      "description": "ID of the requester to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "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": [
            "requester"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "type": "options",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "First Name",
          "name": "first_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "options",
          "default": "",
          "options": [
            {
              "value": "en",
              "name": "English"
            },
            {
              "value": "ar",
              "name": "Arabic"
            },
            {
              "value": "ca",
              "name": "Catalan"
            },
            {
              "value": "cs",
              "name": "Czech"
            },
            {
              "value": "cy-GB",
              "name": "Welsh"
            },
            {
              "value": "da",
              "name": "Danish"
            },
            {
              "value": "de",
              "name": "German"
            },
            {
              "value": "es",
              "name": "Spanish"
            },
            {
              "value": "es-LA",
              "name": "Spanish (Latin America)"
            },
            {
              "value": "et",
              "name": "Estonian"
            },
            {
              "value": "fi",
              "name": "Finnish"
            },
            {
              "value": "fr",
              "name": "French"
            },
            {
              "value": "he",
              "name": "Hebrew"
            },
            {
              "value": "hu",
              "name": "Hungarian"
            },
            {
              "value": "id",
              "name": "Indonesian"
            },
            {
              "value": "it",
              "name": "Italian"
            },
            {
              "value": "ja-JP",
              "name": "Japanese"
            },
            {
              "value": "ko",
              "name": "Korean"
            },
            {
              "value": "LV",
              "name": "Latvian"
            },
            {
              "value": "nb-NO",
              "name": "Norwegian"
            },
            {
              "value": "nl",
              "name": "Dutch"
            },
            {
              "value": "pl",
              "name": "Polish"
            },
            {
              "value": "pt",
              "name": "Portuguese"
            },
            {
              "value": "pt-BR",
              "name": "Portuguese (Brazil)"
            },
            {
              "value": "pt-PT",
              "name": "Portuguese (Portugal)"
            },
            {
              "value": "ru-RU",
              "name": "Russian"
            },
            {
              "value": "sk",
              "name": "Slovak"
            },
            {
              "value": "sk-SK",
              "name": "Slovak"
            },
            {
              "value": "sl",
              "name": "Slovenian"
            },
            {
              "value": "sv-SE",
              "name": "Swedish"
            },
            {
              "value": "th",
              "name": "Thai"
            },
            {
              "value": "tr",
              "name": "Turkish"
            },
            {
              "value": "UK",
              "name": "Ukrainian"
            },
            {
              "value": "vi",
              "name": "Vietnamese"
            },
            {
              "value": "zh-CN",
              "name": "Chinese (Simplified)"
            },
            {
              "value": "zh-TW",
              "name": "Chinese (Traditional)"
            }
          ]
        },
        {
          "displayName": "Last Name",
          "name": "last_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Location Name or ID",
          "name": "location_id",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getLocations"
          }
        },
        {
          "displayName": "Mobile Phone Number",
          "name": "mobile_phone_number",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Primary Email",
          "name": "primary_email",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Work Phone Number",
          "name": "work_phone_number",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Requester ID",
      "name": "requesterId",
      "type": "string",
      "default": "",
      "description": "ID of the requester to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Address",
          "name": "address",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Background Information",
          "name": "background_information",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Department Names or IDs",
          "name": "department_ids",
          "type": "multiOptions",
          "default": [],
          "description": "Comma-separated IDs of the departments associated with the requester. 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": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "First Name",
          "name": "first_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Job Title",
          "name": "job_title",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Language",
          "name": "language",
          "type": "options",
          "default": "",
          "options": [
            {
              "value": "en",
              "name": "English"
            },
            {
              "value": "ar",
              "name": "Arabic"
            },
            {
              "value": "ca",
              "name": "Catalan"
            },
            {
              "value": "cs",
              "name": "Czech"
            },
            {
              "value": "cy-GB",
              "name": "Welsh"
            },
            {
              "value": "da",
              "name": "Danish"
            },
            {
              "value": "de",
              "name": "German"
            },
            {
              "value": "es",
              "name": "Spanish"
            },
            {
              "value": "es-LA",
              "name": "Spanish (Latin America)"
            },
            {
              "value": "et",
              "name": "Estonian"
            },
            {
              "value": "fi",
              "name": "Finnish"
            },
            {
              "value": "fr",
              "name": "French"
            },
            {
              "value": "he",
              "name": "Hebrew"
            },
            {
              "value": "hu",
              "name": "Hungarian"
            },
            {
              "value": "id",
              "name": "Indonesian"
            },
            {
              "value": "it",
              "name": "Italian"
            },
            {
              "value": "ja-JP",
              "name": "Japanese"
            },
            {
              "value": "ko",
              "name": "Korean"
            },
            {
              "value": "LV",
              "name": "Latvian"
            },
            {
              "value": "nb-NO",
              "name": "Norwegian"
            },
            {
              "value": "nl",
              "name": "Dutch"
            },
            {
              "value": "pl",
              "name": "Polish"
            },
            {
              "value": "pt",
              "name": "Portuguese"
            },
            {
              "value": "pt-BR",
              "name": "Portuguese (Brazil)"
            },
            {
              "value": "pt-PT",
              "name": "Portuguese (Portugal)"
            },
            {
              "value": "ru-RU",
              "name": "Russian"
            },
            {
              "value": "sk",
              "name": "Slovak"
            },
            {
              "value": "sk-SK",
              "name": "Slovak"
            },
            {
              "value": "sl",
              "name": "Slovenian"
            },
            {
              "value": "sv-SE",
              "name": "Swedish"
            },
            {
              "value": "th",
              "name": "Thai"
            },
            {
              "value": "tr",
              "name": "Turkish"
            },
            {
              "value": "UK",
              "name": "Ukrainian"
            },
            {
              "value": "vi",
              "name": "Vietnamese"
            },
            {
              "value": "zh-CN",
              "name": "Chinese (Simplified)"
            },
            {
              "value": "zh-TW",
              "name": "Chinese (Traditional)"
            }
          ]
        },
        {
          "displayName": "Last Name",
          "name": "last_name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Location Name or ID",
          "name": "location_id",
          "type": "options",
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getLocations"
          }
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobile_phone_number",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Primary Email",
          "name": "primary_email",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Secondary Emails",
          "name": "secondary_emails",
          "type": "string",
          "default": "",
          "description": "Comma-separated secondary emails associated with the requester"
        },
        {
          "displayName": "Time Format",
          "name": "time_format",
          "type": "options",
          "default": "12h",
          "options": [
            {
              "name": "12-Hour Format",
              "value": "12h"
            },
            {
              "name": "24-Hour Format",
              "value": "24h"
            }
          ]
        },
        {
          "displayName": "Work Phone",
          "name": "work_phone_number",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requester"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a requester group",
          "action": "Create a requester group"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a requester group",
          "action": "Delete a requester group"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a requester group",
          "action": "Get a requester group"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many requester groups",
          "action": "Get many requester groups"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a requester group",
          "action": "Update a requester group"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Requester Group ID",
      "name": "requesterGroupId",
      "type": "string",
      "default": "",
      "description": "ID of the requester group to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Requester Group ID",
      "name": "requesterGroupId",
      "type": "string",
      "default": "",
      "description": "ID of the requester group to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "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": [
            "requesterGroup"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Requester Group ID",
      "name": "requesterGroupId",
      "type": "string",
      "default": "",
      "description": "ID of the requester group to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "Description of the requester group"
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "Name of the requester group"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "requesterGroup"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a software application",
          "action": "Create a software application"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a software application",
          "action": "Delete a software application"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a software application",
          "action": "Get a software application"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many software applications",
          "action": "Get many software applications"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a software application",
          "action": "Update a software application"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Application Type",
      "name": "applicationType",
      "type": "options",
      "default": "desktop",
      "options": [
        {
          "name": "Desktop",
          "value": "desktop"
        },
        {
          "name": "Mobile",
          "value": "mobile"
        },
        {
          "name": "SaaS",
          "value": "saas"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Notes",
          "name": "notes",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": "managed",
          "options": [
            {
              "name": "Disabled",
              "value": "disabled"
            },
            {
              "name": "Ignored",
              "value": "ignored"
            },
            {
              "name": "Needs Review",
              "value": "needs review"
            },
            {
              "name": "Restricted",
              "value": "restricted"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Software ID",
      "name": "softwareId",
      "type": "string",
      "default": "",
      "description": "ID of the software application to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Software ID",
      "name": "softwareId",
      "type": "string",
      "default": "",
      "description": "ID of the software application to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "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": [
            "software"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Software ID",
      "name": "softwareId",
      "type": "string",
      "default": "",
      "description": "ID of the software application to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Application Type",
          "name": "application_type",
          "type": "options",
          "default": "desktop",
          "description": "Type of the software",
          "options": [
            {
              "name": "Desktop",
              "value": "desktop"
            },
            {
              "name": "Mobile",
              "value": "mobile"
            },
            {
              "name": "SaaS",
              "value": "saas"
            }
          ]
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Notes",
          "name": "notes",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": "managed",
          "options": [
            {
              "name": "Disabled",
              "value": "disabled"
            },
            {
              "name": "Ignored",
              "value": "ignored"
            },
            {
              "name": "Needs Review",
              "value": "needs review"
            },
            {
              "name": "Restricted",
              "value": "restricted"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "software"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a ticket",
          "action": "Create a ticket"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a ticket",
          "action": "Delete a ticket"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a ticket",
          "action": "Get a ticket"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve many tickets",
          "action": "Get many tickets"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a ticket",
          "action": "Update a ticket"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Email",
      "name": "email",
      "type": "string",
      "default": "",
      "description": "Email address of the ticket author",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Subject",
      "name": "subject",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Description",
      "name": "description",
      "type": "string",
      "default": "",
      "description": "HTML supported",
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Priority",
      "name": "priority",
      "type": "options",
      "default": 1,
      "options": [
        {
          "name": "Low",
          "value": 1
        },
        {
          "name": "Medium",
          "value": 2
        },
        {
          "name": "High",
          "value": 3
        },
        {
          "name": "Urgent",
          "value": 4
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Status",
      "name": "status",
      "type": "options",
      "default": 2,
      "options": [
        {
          "name": "Open",
          "value": 2
        },
        {
          "name": "Pending",
          "value": 3
        },
        {
          "name": "Resolved",
          "value": 4
        },
        {
          "name": "Closed",
          "value": 5
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "CC Emails",
          "name": "cc_emails",
          "type": "string",
          "default": "",
          "description": "Comma-separated email addresses to add in the CC field of the ticket email"
        },
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department to which this ticket belongs. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the group to which the ticket has been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "Name of the ticket author"
        },
        {
          "displayName": "Requester Name or ID",
          "name": "requester_id",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "default": "",
          "typeOptions": {
            "loadOptionsMethod": "getRequesters"
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Ticket ID",
      "name": "ticketId",
      "type": "string",
      "default": "",
      "description": "ID of the ticket to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Ticket ID",
      "name": "ticketId",
      "type": "string",
      "default": "",
      "description": "ID of the ticket to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "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": [
            "ticket"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Agent Name or ID",
          "name": "agent_id",
          "type": "options",
          "default": "",
          "description": "ID of the agent to whom the tickets have been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgents"
          }
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the group to which the tickets have been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 2,
          "options": [
            {
              "name": "Open",
              "value": 2
            },
            {
              "name": "Pending",
              "value": 3
            },
            {
              "name": "Resolved",
              "value": 4
            },
            {
              "name": "Closed",
              "value": 5
            }
          ]
        },
        {
          "displayName": "Created On",
          "name": "created_at",
          "type": "dateTime",
          "default": "",
          "description": "Date when the ticket was created"
        },
        {
          "displayName": "Due By",
          "name": "due_by",
          "description": "Date when the ticket is due to be resolved",
          "type": "dateTime",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Ticket ID",
      "name": "ticketId",
      "type": "string",
      "default": "",
      "description": "ID of the ticket to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Department Name or ID",
          "name": "department_id",
          "type": "options",
          "default": "",
          "description": "ID of the department to which this ticket has been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getDepartments"
          }
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "HTML supported"
        },
        {
          "displayName": "Email",
          "name": "email",
          "type": "string",
          "placeholder": "name@email.com",
          "default": "",
          "description": "Email address of the ticket author"
        },
        {
          "displayName": "Group Name or ID",
          "name": "group_id",
          "type": "options",
          "default": "",
          "description": "ID of the group to which the ticket has been assigned. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsMethod": "getAgentGroups"
          }
        },
        {
          "displayName": "Impact",
          "name": "impact",
          "type": "options",
          "default": 1,
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            }
          ]
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "Name of the ticket author"
        },
        {
          "displayName": "Phone",
          "name": "phone",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Priority",
          "name": "priority",
          "type": "options",
          "default": 1,
          "description": "Priority of the ticket",
          "options": [
            {
              "name": "Low",
              "value": 1
            },
            {
              "name": "Medium",
              "value": 2
            },
            {
              "name": "High",
              "value": 3
            },
            {
              "name": "Urgent",
              "value": 4
            }
          ]
        },
        {
          "displayName": "Status",
          "name": "status",
          "type": "options",
          "default": 2,
          "options": [
            {
              "name": "Open",
              "value": 2
            },
            {
              "name": "Pending",
              "value": 3
            },
            {
              "name": "Resolved",
              "value": 4
            },
            {
              "name": "Closed",
              "value": 5
            }
          ]
        },
        {
          "displayName": "Subject",
          "name": "subject",
          "type": "string",
          "default": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "ticket"
          ],
          "operation": [
            "update"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create an agent"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete an agent"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve an agent"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve many agents"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update an agent"
    }
  ]


