# nodes

node_type: nodes-base.githubTool
package_name: n8n-nodes-base
display_name: GitHub Tool
description: Consume GitHub API (AI Tool variant for use with AI Agents)
category: input
development_style: programmatic
version: 1.1
outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-07-16 12:10:22
tool_variant_of: nodes-base.github
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: GitHub node documentation
  description: Learn how to use the GitHub node in n8n. Follow technical documentation to integrate GitHub node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # GitHub node

  Use the GitHub node to automate work in GitHub, and integrate GitHub with other applications. n8n has built-in support for a wide range of GitHub features, including creating, updating, deleting, and editing files, repositories, issues, releases, and users. 

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

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

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

  ## Operations

  * File
  	* Create
  	* Delete
  	* Edit
  	* Get
  	* List
  * Issue
  	* Create
  	* Create Comment
  	* Edit
  	* Get
  	* Lock
  * Organization
  	* Get Repositories
  * Release
  	* Create
  	* Delete
  	* Get
  	* Get Many
  	* Update
  * Repository
      * Get
  	* Get Issues
  	* Get License
  	* Get Profile
  	* Get Pull Requests
  	* List Popular Paths
  	* List Referrers
  * Review
  	* Create
  	* Get
  	* Get Many
  	* Update
  * User
      * Get Repositories
      * Invite
  * Workflow
  	* Disable
  	* Dispatch
  	* Enable
  	* Get
  	* Get Usage
  	* List

  ## Templates and examples

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

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

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with GitHub"
    },
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        },
        {
          "name": "GitHub App",
          "value": "githubAppApi"
        }
      ]
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "issue",
      "options": [
        {
          "name": "File",
          "value": "file"
        },
        {
          "name": "Issue",
          "value": "issue"
        },
        {
          "name": "Organization",
          "value": "organization"
        },
        {
          "name": "Pull Request",
          "value": "pullRequest"
        },
        {
          "name": "Release",
          "value": "release"
        },
        {
          "name": "Repository",
          "value": "repository"
        },
        {
          "name": "Review",
          "value": "review"
        },
        {
          "name": "User",
          "value": "user"
        },
        {
          "name": "Workflow",
          "value": "workflow"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getRepositories",
      "options": [
        {
          "name": "Get Repositories",
          "value": "getRepositories",
          "description": "Returns all repositories of an organization",
          "action": "Get repositories for an organization"
        },
        {
          "name": "Get Members",
          "value": "getMembers",
          "description": "Returns all members of an organization",
          "action": "Get members for an organization"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "organization"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new pull request",
          "action": "Create a pull request"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a pull request",
          "action": "Update a pull request"
        },
        {
          "name": "Close",
          "value": "close",
          "description": "Close a pull request",
          "action": "Close a pull request"
        },
        {
          "name": "Reopen",
          "value": "reopen",
          "description": "Reopen a pull request",
          "action": "Reopen a pull request"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single pull request",
          "action": "Get a pull request"
        },
        {
          "name": "Create Comment",
          "value": "createComment",
          "description": "Create a new comment on a pull request",
          "action": "Create a comment on a pull request"
        },
        {
          "name": "Edit Comment",
          "value": "editComment",
          "description": "Edit a comment on a pull request",
          "action": "Edit a comment on a pull request"
        },
        {
          "name": "Get Diff",
          "value": "getDiff",
          "description": "Get the raw diff of a pull request",
          "action": "Get a pull request diff"
        },
        {
          "name": "Get Patch",
          "value": "getPatch",
          "description": "Get the raw patch of a pull request",
          "action": "Get a pull request patch"
        },
        {
          "name": "Merge",
          "value": "merge",
          "description": "Merge a pull request",
          "action": "Merge a pull request"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Base Branch",
      "name": "base",
      "type": "string",
      "default": "",
      "description": "The branch you want to merge into (e.g. master)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Head Branch",
      "name": "head",
      "type": "string",
      "default": "",
      "description": "The branch containing your changes. For a cross‑fork PR, use the format owner:branchname (e.g. johndoe:featurebranch).",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "description": "The title of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the pull request",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Create a Draft Pull Request",
      "name": "draft",
      "type": "boolean",
      "default": false,
      "description": "Whether to create the pull request as a draft",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "update",
            "close",
            "reopen",
            "get",
            "createComment",
            "getDiff",
            "getPatch",
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Edit Fields",
      "name": "editFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": "",
          "description": "The new title of the pull request"
        },
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The new body of the pull request"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "Open",
              "value": "open"
            },
            {
              "name": "Closed",
              "value": "closed"
            }
          ],
          "default": "",
          "description": "The state of the pull request"
        },
        {
          "displayName": "Base Branch",
          "name": "base",
          "type": "string",
          "default": "",
          "description": "The branch you want to merge into (e.g. master)"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "pullRequest"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Comment ID",
      "name": "commentId",
      "type": "number",
      "default": 0,
      "description": "The ID of the comment to edit",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "editComment"
          ],
          "resource": [
            "pullRequest"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "editComment"
          ],
          "resource": [
            "pullRequest"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Merge Method",
      "name": "mergeMethod",
      "type": "options",
      "default": "merge",
      "options": [
        {
          "name": "Merge Commit",
          "value": "merge"
        },
        {
          "name": "Squash and Merge",
          "value": "squash"
        },
        {
          "name": "Rebase and Merge",
          "value": "rebase"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Commit Title",
      "name": "commitTitle",
      "type": "string",
      "default": "",
      "description": "Title for the automatic merge commit",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Commit Message",
      "name": "commitMessage",
      "type": "string",
      "default": "",
      "description": "Extra detail to append to automatic merge commit",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      },
      "typeOptions": {
        "rows": 4
      }
    },
    {
      "displayName": "If a merge queue is required on the target branch, this request will automatically enqueue the pull request and return 202 Accepted. If no queue is required, the pull request will be merged immediately and return 200 OK.",
      "name": "mergeQueueNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new issue",
          "action": "Create an issue"
        },
        {
          "name": "Create Comment",
          "value": "createComment",
          "description": "Create a new comment on an issue",
          "action": "Create a comment on an issue"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit an issue",
          "action": "Edit an issue"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single issue",
          "action": "Get an issue"
        },
        {
          "name": "Lock",
          "value": "lock",
          "description": "Lock an issue",
          "action": "Lock an issue"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "issue"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new file in repository",
          "action": "Create a file"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a file in repository",
          "action": "Delete a file"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit a file in repository",
          "action": "Edit a file"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single file",
          "action": "Get a file"
        },
        {
          "name": "List",
          "value": "list",
          "description": "List contents of a folder",
          "action": "List files"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getIssues",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single repository",
          "action": "Get a repository"
        },
        {
          "name": "Get Issues",
          "value": "getIssues",
          "description": "Returns issues of a repository",
          "action": "Get issues of a repository"
        },
        {
          "name": "Get License",
          "value": "getLicense",
          "description": "Returns the contents of the repository's license file, if one is detected",
          "action": "Get the license of a repository"
        },
        {
          "name": "Get Profile",
          "value": "getProfile",
          "description": "Get the community profile of a repository with metrics, health score, description, license, etc",
          "action": "Get the profile of a repository"
        },
        {
          "name": "Get Pull Requests",
          "value": "getPullRequests",
          "description": "Returns pull requests of a repository",
          "action": "Get pull requests of a repository"
        },
        {
          "name": "List Popular Paths",
          "value": "listPopularPaths",
          "description": "Get the top 10 popular content paths over the last 14 days",
          "action": "List popular paths in a repository"
        },
        {
          "name": "List Referrers",
          "value": "listReferrers",
          "description": "Get the top 10 referrering domains over the last 14 days",
          "action": "List the top referrers of a repository"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getRepositories",
      "options": [
        {
          "name": "Get Repositories",
          "value": "getRepositories",
          "description": "Returns the repositories of a user",
          "action": "Get a user's repositories"
        },
        {
          "name": "Get Issues",
          "value": "getUserIssues",
          "description": "Returns the issues assigned to the user",
          "action": "Get a user's issues"
        },
        {
          "name": "Invite",
          "value": "invite",
          "description": "Invites a user to an organization",
          "action": "Invite a user"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Creates a new release",
          "action": "Create a release"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a release",
          "action": "Delete a release"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a release",
          "action": "Get a release"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many repository releases",
          "action": "Get many releases"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a release",
          "action": "Update a release"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Creates a new review",
          "action": "Create a review"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a review for a pull request",
          "action": "Get a review"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many reviews for a pull request",
          "action": "Get many reviews"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a review",
          "action": "Update a review"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "review"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "dispatch",
      "options": [
        {
          "name": "Disable",
          "value": "disable",
          "description": "Disable a workflow",
          "action": "Disable a workflow"
        },
        {
          "name": "Dispatch",
          "value": "dispatch",
          "description": "Dispatch a workflow event",
          "action": "Dispatch a workflow event"
        },
        {
          "name": "Dispatch and Wait for Completion",
          "value": "dispatchAndWait",
          "description": "Dispatch a workflow event and wait for a webhook to be called before proceeding",
          "action": "Dispatch a workflow event and wait for completion"
        },
        {
          "name": "Enable",
          "value": "enable",
          "description": "Enable a workflow",
          "action": "Enable a workflow"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a workflow",
          "action": "Get a workflow"
        },
        {
          "name": "Get Usage",
          "value": "getUsage",
          "description": "Get the usage of a workflow",
          "action": "Get the usage of a workflow"
        },
        {
          "name": "List",
          "value": "list",
          "description": "List workflows",
          "action": "List workflows"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Your execution will pause until a webhook is called. This URL will be generated at runtime and passed to your Github workflow as a resumeUrl input.",
      "name": "webhookNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatchAndWait"
          ]
        }
      }
    },
    {
      "displayName": "Repository Owner",
      "name": "owner",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "hide": {
          "operation": [
            "invite",
            "getUserIssues"
          ]
        }
      },
      "modes": [
        {
          "displayName": "Repository Owner",
          "name": "list",
          "type": "list",
          "placeholder": "Select an owner...",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true,
            "searchFilterRequired": true
          }
        },
        {
          "displayName": "Link",
          "name": "url",
          "type": "string",
          "placeholder": "e.g. https://github.com/n8n-io",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/(?:[^/]+)\\/([-_0-9a-zA-Z]+)"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/([^/]+)\\/([-_0-9a-zA-Z]+)(?:.*)",
                "errorMessage": "Not a valid Github URL"
              }
            }
          ]
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. n8n-io",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[-_a-zA-Z0-9]+",
                "errorMessage": "Not a valid Github Owner Name"
              }
            }
          ],
          "url": "=https://github.com/{{$value}}"
        }
      ]
    },
    {
      "displayName": "Repository Name",
      "name": "repository",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "hide": {
          "resource": [
            "user",
            "organization"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      },
      "modes": [
        {
          "displayName": "Repository Name",
          "name": "list",
          "type": "list",
          "placeholder": "Select an Repository...",
          "typeOptions": {
            "searchListMethod": "getRepositories",
            "searchable": true
          }
        },
        {
          "displayName": "Link",
          "name": "url",
          "type": "string",
          "placeholder": "e.g. https://github.com/n8n-io/n8n",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/(?:[^/]+)\\/(?:[-_0-9a-zA-Z]+)\\/([-_.0-9a-zA-Z]+)"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/([^/]+)\\/(?:[-_0-9a-zA-Z]+)\\/([-_.0-9a-zA-Z]+)(?:.*)",
                "errorMessage": "Not a valid Github Repository URL"
              }
            }
          ]
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. n8n",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[-_.0-9a-zA-Z]+",
                "errorMessage": "Not a valid Github Repository Name"
              }
            }
          ],
          "url": "=https://github.com/{{$parameter[\"owner\"]}}/{{$value}}"
        }
      ]
    },
    {
      "displayName": "Workflow",
      "name": "workflowId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The workflow to dispatch",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "disable",
            "dispatch",
            "dispatchAndWait",
            "get",
            "getUsage",
            "enable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "Workflow",
          "name": "list",
          "type": "list",
          "placeholder": "Select a workflow...",
          "typeOptions": {
            "searchListMethod": "getWorkflows",
            "searchable": true
          }
        },
        {
          "displayName": "By File Name",
          "name": "filename",
          "type": "string",
          "placeholder": "e.g. main.yaml or main.yml",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9_-]+.(yaml|yml)",
                "errorMessage": "Not a valid Github Workflow File Name"
              }
            }
          ]
        },
        {
          "displayName": "By ID",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. 12345678",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "\\d+",
                "errorMessage": "Not a valid Github Workflow ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Ref",
      "name": "ref",
      "type": "string",
      "default": "main",
      "description": "The git reference for the workflow dispatch (branch or tag name)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatch",
            "dispatchAndWait"
          ],
          "@version": [
            {
              "_cnd": {
                "lte": 1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Ref",
      "name": "ref",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The git reference for the workflow dispatch (branch, tag, or commit SHA)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatch",
            "dispatchAndWait"
          ],
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "placeholder": "Select a branch, tag, or commit...",
          "typeOptions": {
            "searchListMethod": "getRefs",
            "searchable": true
          }
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. main",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[a-zA-Z0-9/._-]+$",
                "errorMessage": "Not a valid branch, tag"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Inputs",
      "name": "inputs",
      "type": "json",
      "default": "{}",
      "description": "JSON object with input parameters for the workflow",
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatch",
            "dispatchAndWait"
          ]
        }
      }
    },
    {
      "displayName": "File Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The file path of the file. Has to contain the full path.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        },
        "hide": {
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The path of the folder to list",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Binary File",
      "name": "binaryData",
      "type": "boolean",
      "default": false,
      "description": "Whether the data to upload should be taken from binary field",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "File Content",
      "name": "fileContent",
      "type": "string",
      "default": "",
      "description": "The text content of the file",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            false
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            true
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Commit Message",
      "name": "commitMessage",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "fixedCollection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "name": "author",
          "displayName": "Author",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "description": "The name of the author of the commit"
            },
            {
              "displayName": "Email",
              "name": "email",
              "type": "string",
              "placeholder": "name@email.com",
              "default": "",
              "description": "The email of the author of the commit"
            }
          ]
        },
        {
          "name": "branch",
          "displayName": "Branch",
          "values": [
            {
              "displayName": "Branch",
              "name": "branch",
              "type": "string",
              "default": "",
              "description": "The branch to commit to. If not set the repository’s default branch (usually master) is used."
            }
          ]
        },
        {
          "name": "committer",
          "displayName": "Committer",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "description": "The name of the committer of the commit"
            },
            {
              "displayName": "Email",
              "name": "email",
              "type": "string",
              "placeholder": "name@email.com",
              "default": "",
              "description": "The email of the committer of the commit"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "As Binary Property",
      "name": "asBinaryProperty",
      "type": "boolean",
      "default": true,
      "description": "Whether to set the data of the file as binary property instead of returning the raw API response",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "asBinaryProperty": [
            true
          ],
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "collection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Reference",
          "name": "reference",
          "type": "string",
          "default": "",
          "placeholder": "master",
          "description": "The name of the commit/branch/tag. Default: the repository’s default branch (usually master)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "description": "The title of the issue",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the issue",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Labels",
      "name": "labels",
      "type": "collection",
      "default": {
        "label": ""
      },
      "options": [
        {
          "displayName": "Label",
          "name": "label",
          "type": "string",
          "default": "",
          "description": "Label to add to issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Label"
      }
    },
    {
      "displayName": "Assignees",
      "name": "assignees",
      "type": "collection",
      "default": {
        "assignee": ""
      },
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee",
          "type": "string",
          "default": "",
          "description": "User to assign issue too"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Assignee"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue on which to create the comment on",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue edit",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Edit Fields",
      "name": "editFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignees",
          "name": "assignees",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Assignee"
          },
          "default": {
            "assignee": ""
          },
          "options": [
            {
              "displayName": "Assignees",
              "name": "assignee",
              "type": "string",
              "default": "",
              "description": "User to assign issue to"
            }
          ]
        },
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the issue"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Label"
          },
          "default": {
            "label": ""
          },
          "options": [
            {
              "displayName": "Label",
              "name": "label",
              "type": "string",
              "default": "",
              "description": "Label to add to issue"
            }
          ]
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "Closed",
              "value": "closed",
              "description": "Set the state to \"closed\""
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Set the state to \"open\""
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "State Reason",
          "name": "state_reason",
          "type": "options",
          "options": [
            {
              "name": "Completed",
              "value": "completed",
              "description": "Issue is completed"
            },
            {
              "name": "Not Planned",
              "value": "not_planned",
              "description": "Issue is not planned"
            },
            {
              "name": "Reopened",
              "value": "reopened",
              "description": "Issue is reopened"
            }
          ],
          "default": "completed",
          "description": "The reason for the state change"
        },
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": "",
          "description": "The title of the issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The issue number to get data for",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The issue number to lock",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Lock Reason",
      "name": "lockReason",
      "type": "options",
      "default": "resolved",
      "description": "The reason for locking the issue",
      "options": [
        {
          "name": "Off-Topic",
          "value": "off-topic",
          "description": "The issue is Off-Topic"
        },
        {
          "name": "Too Heated",
          "value": "too heated",
          "description": "The discussion is too heated"
        },
        {
          "name": "Resolved",
          "value": "resolved",
          "description": "The issue got resolved"
        },
        {
          "name": "Spam",
          "value": "spam",
          "description": "The issue is spam"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Tag",
      "name": "releaseTag",
      "type": "string",
      "default": "",
      "description": "The tag of the release",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the issue"
        },
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the release"
        },
        {
          "displayName": "Draft",
          "name": "draft",
          "type": "boolean",
          "default": false,
          "description": "Whether to create a draft (unpublished) release, \"false\" to create a published one"
        },
        {
          "displayName": "Prerelease",
          "name": "prerelease",
          "type": "boolean",
          "default": false,
          "description": "Whether to point out that the release is non-production ready"
        },
        {
          "displayName": "Target Commitish",
          "name": "target_commitish",
          "type": "string",
          "default": "",
          "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch(usually master)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Release ID",
      "name": "release_id",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "get",
            "delete",
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the release"
        },
        {
          "displayName": "Draft",
          "name": "draft",
          "type": "boolean",
          "default": false,
          "description": "Whether to create a draft (unpublished) release, \"false\" to create a published one"
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the release"
        },
        {
          "displayName": "Prerelease",
          "name": "prerelease",
          "type": "boolean",
          "default": false,
          "description": "Whether to point out that the release is non-production ready"
        },
        {
          "displayName": "Tag Name",
          "name": "tag_name",
          "type": "string",
          "default": "",
          "description": "The name of the tag"
        },
        {
          "displayName": "Target Commitish",
          "name": "target_commitish",
          "type": "string",
          "default": "",
          "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch(usually master)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "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,
        "maxValue": 100
      }
    },
    {
      "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": [
            "repository"
          ],
          "operation": [
            "getIssues"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ],
          "operation": [
            "getIssues"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "getRepositoryIssuesFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee",
          "type": "string",
          "default": "",
          "description": "Return only issues which are assigned to a specific user"
        },
        {
          "displayName": "Creator",
          "name": "creator",
          "type": "string",
          "default": "",
          "description": "Return only issues which were created by a specific user"
        },
        {
          "displayName": "Mentioned",
          "name": "mentioned",
          "type": "string",
          "default": "",
          "description": "Return only issues in which a specific user was mentioned"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "string",
          "default": "",
          "description": "Return only issues with the given labels. Multiple labels can be separated by comma."
        },
        {
          "displayName": "Updated Since",
          "name": "since",
          "type": "dateTime",
          "default": "",
          "description": "Return only issues updated at or after this time"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Returns issues with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return issues with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Return issues with \"open\" state"
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Created",
              "value": "created",
              "description": "Sort by created date"
            },
            {
              "name": "Updated",
              "value": "updated",
              "description": "Sort by updated date"
            },
            {
              "name": "Comments",
              "value": "comments",
              "description": "Sort by comments"
            }
          ],
          "default": "created",
          "description": "The order the issues should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "direction",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getIssues"
          ],
          "resource": [
            "repository"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    },
    {
      "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": [
            "repository"
          ],
          "operation": [
            "getPullRequests"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return. Maximum value is <a href=\"https://docs.github.com/en/rest/pulls/pulls?apiVersion=2022-11-28#list-pull-requests\">100</a>.",
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ],
          "operation": [
            "getPullRequests"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "getRepositoryPullRequestsFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Returns pull requests with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return pull requests with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Return pull requests with \"open\" state"
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Created",
              "value": "created",
              "description": "Sort by created date"
            },
            {
              "name": "Updated",
              "value": "updated",
              "description": "Sort by updated date"
            },
            {
              "name": "Popularity",
              "value": "popularity",
              "description": "Sort by number of comments"
            },
            {
              "name": "Long-Running",
              "value": "long-running",
              "description": "Sort by date created and will limit the results to pull requests that have been open for more than a month and have had activity within the past month"
            }
          ],
          "default": "created",
          "description": "The order the pull requests should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "direction",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getPullRequests"
          ],
          "resource": [
            "repository"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get",
            "update"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Review ID",
      "name": "reviewId",
      "type": "string",
      "default": "",
      "description": "ID of the review",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get",
            "update"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "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": [
            "review"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "review"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request to review",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Event",
      "name": "event",
      "type": "options",
      "default": "approve",
      "description": "The review action you want to perform",
      "options": [
        {
          "name": "Approve",
          "value": "approve",
          "description": "Approve the pull request"
        },
        {
          "name": "Request Change",
          "value": "requestChanges",
          "description": "Request code changes"
        },
        {
          "name": "Comment",
          "value": "comment",
          "description": "Add a comment without approval or change requests"
        },
        {
          "name": "Pending",
          "value": "pending",
          "description": "You will need to submit the pull request review when you are ready"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the review (required for events Request Changes or Comment)",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ],
          "event": [
            "requestChanges",
            "comment"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Commit ID",
          "name": "commitId",
          "type": "string",
          "default": "",
          "description": "The SHA of the commit that needs a review, if different from the latest"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the review",
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getRepositories"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Organization",
      "name": "organization",
      "type": "string",
      "default": "",
      "description": "The GitHub organization that the user is being invited to",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "invite"
          ],
          "resource": [
            "user"
          ]
        }
      }
    },
    {
      "displayName": "Email",
      "name": "email",
      "type": "string",
      "default": "",
      "description": "The email address of the invited user",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "invite"
          ],
          "resource": [
            "user"
          ]
        }
      }
    },
    {
      "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": [
            "organization"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "organization"
          ],
          "operation": [
            "getRepositories"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "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": [
            "organization"
          ],
          "operation": [
            "getMembers"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "organization"
          ],
          "operation": [
            "getMembers"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "operation": [
            "getUserIssues"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "operation": [
            "getUserIssues"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "getUserIssuesFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Mentioned",
          "name": "mentioned",
          "type": "string",
          "default": "",
          "description": "Return only issues in which a specific user was mentioned"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "string",
          "default": "",
          "description": "Return only issues with the given labels. Multiple labels can be separated by comma."
        },
        {
          "displayName": "Updated Since",
          "name": "since",
          "type": "dateTime",
          "default": "",
          "description": "Return only issues updated at or after this time"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Returns issues with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return issues with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Return issues with \"open\" state"
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Created",
              "value": "created",
              "description": "Sort by created date"
            },
            {
              "name": "Updated",
              "value": "updated",
              "description": "Sort by updated date"
            },
            {
              "name": "Comments",
              "value": "comments",
              "description": "Sort by comments"
            }
          ],
          "default": "created",
          "description": "The order the issues should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "direction",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getUserIssues"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    }
  ]

operations:
  [
    {
      "operation": "getRepositories",
      "name": "Get Repositories",
      "description": "Returns all repositories of an organization",
      "resource": "organization"
    },
    {
      "operation": "getMembers",
      "name": "Get Members",
      "description": "Returns all members of an organization",
      "resource": "organization"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "close",
      "name": "Close",
      "description": "Close a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "reopen",
      "name": "Reopen",
      "description": "Reopen a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "createComment",
      "name": "Create Comment",
      "description": "Create a new comment on a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "editComment",
      "name": "Edit Comment",
      "description": "Edit a comment on a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "getDiff",
      "name": "Get Diff",
      "description": "Get the raw diff of a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "getPatch",
      "name": "Get Patch",
      "description": "Get the raw patch of a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "merge",
      "name": "Merge",
      "description": "Merge a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new issue",
      "resource": "issue"
    },
    {
      "operation": "createComment",
      "name": "Create Comment",
      "description": "Create a new comment on an issue",
      "resource": "issue"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit an issue",
      "resource": "issue"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single issue",
      "resource": "issue"
    },
    {
      "operation": "lock",
      "name": "Lock",
      "description": "Lock an issue",
      "resource": "issue"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new file in repository",
      "resource": "file"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a file in repository",
      "resource": "file"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit a file in repository",
      "resource": "file"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single file",
      "resource": "file"
    },
    {
      "operation": "list",
      "name": "List",
      "description": "List contents of a folder",
      "resource": "file"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single repository",
      "resource": "repository"
    },
    {
      "operation": "getIssues",
      "name": "Get Issues",
      "description": "Returns issues of a repository",
      "resource": "repository"
    },
    {
      "operation": "getLicense",
      "name": "Get License",
      "description": "Returns the contents of the repository's license file, if one is detected",
      "resource": "repository"
    },
    {
      "operation": "getProfile",
      "name": "Get Profile",
      "description": "Get the community profile of a repository with metrics, health score, description, license, etc",
      "resource": "repository"
    },
    {
      "operation": "getPullRequests",
      "name": "Get Pull Requests",
      "description": "Returns pull requests of a repository",
      "resource": "repository"
    },
    {
      "operation": "listPopularPaths",
      "name": "List Popular Paths",
      "description": "Get the top 10 popular content paths over the last 14 days",
      "resource": "repository"
    },
    {
      "operation": "listReferrers",
      "name": "List Referrers",
      "description": "Get the top 10 referrering domains over the last 14 days",
      "resource": "repository"
    },
    {
      "operation": "getRepositories",
      "name": "Get Repositories",
      "description": "Returns the repositories of a user",
      "resource": "user"
    },
    {
      "operation": "getUserIssues",
      "name": "Get Issues",
      "description": "Returns the issues assigned to the user",
      "resource": "user"
    },
    {
      "operation": "invite",
      "name": "Invite",
      "description": "Invites a user to an organization",
      "resource": "user"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Creates a new release",
      "resource": "release"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a release",
      "resource": "release"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a release",
      "resource": "release"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many repository releases",
      "resource": "release"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a release",
      "resource": "release"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Creates a new review",
      "resource": "review"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a review for a pull request",
      "resource": "review"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many reviews for a pull request",
      "resource": "review"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a review",
      "resource": "review"
    },
    {
      "operation": "disable",
      "name": "Disable",
      "description": "Disable a workflow",
      "resource": "workflow"
    },
    {
      "operation": "dispatch",
      "name": "Dispatch",
      "description": "Dispatch a workflow event",
      "resource": "workflow"
    },
    {
      "operation": "dispatchAndWait",
      "name": "Dispatch and Wait for Completion",
      "description": "Dispatch a workflow event and wait for a webhook to be called before proceeding",
      "resource": "workflow"
    },
    {
      "operation": "enable",
      "name": "Enable",
      "description": "Enable a workflow",
      "resource": "workflow"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a workflow",
      "resource": "workflow"
    },
    {
      "operation": "getUsage",
      "name": "Get Usage",
      "description": "Get the usage of a workflow",
      "resource": "workflow"
    },
    {
      "operation": "list",
      "name": "List",
      "description": "List workflows",
      "resource": "workflow"
    }
  ]

credentials_required:
  [
    {
      "name": "githubApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "accessToken"
          ]
        }
      }
    },
    {
      "name": "githubOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ]
        }
      }
    },
    {
      "name": "githubAppApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "githubAppApi"
          ]
        }
      }
    }
  ]


node_type: nodes-base.github
package_name: n8n-nodes-base
display_name: GitHub
description: Consume GitHub API
category: input
development_style: programmatic
version: 1.1
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: GitHub node documentation
  description: Learn how to use the GitHub node in n8n. Follow technical documentation to integrate GitHub node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # GitHub node

  Use the GitHub node to automate work in GitHub, and integrate GitHub with other applications. n8n has built-in support for a wide range of GitHub features, including creating, updating, deleting, and editing files, repositories, issues, releases, and users. 

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

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

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

  ## Operations

  * File
  	* Create
  	* Delete
  	* Edit
  	* Get
  	* List
  * Issue
  	* Create
  	* Create Comment
  	* Edit
  	* Get
  	* Lock
  * Organization
  	* Get Repositories
  * Release
  	* Create
  	* Delete
  	* Get
  	* Get Many
  	* Update
  * Repository
      * Get
  	* Get Issues
  	* Get License
  	* Get Profile
  	* Get Pull Requests
  	* List Popular Paths
  	* List Referrers
  * Review
  	* Create
  	* Get
  	* Get Many
  	* Update
  * User
      * Get Repositories
      * Invite
  * Workflow
  	* Disable
  	* Dispatch
  	* Enable
  	* Get
  	* Get Usage
  	* List

  ## Templates and examples

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

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

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        },
        {
          "name": "GitHub App",
          "value": "githubAppApi"
        }
      ]
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "issue",
      "options": [
        {
          "name": "File",
          "value": "file"
        },
        {
          "name": "Issue",
          "value": "issue"
        },
        {
          "name": "Organization",
          "value": "organization"
        },
        {
          "name": "Pull Request",
          "value": "pullRequest"
        },
        {
          "name": "Release",
          "value": "release"
        },
        {
          "name": "Repository",
          "value": "repository"
        },
        {
          "name": "Review",
          "value": "review"
        },
        {
          "name": "User",
          "value": "user"
        },
        {
          "name": "Workflow",
          "value": "workflow"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getRepositories",
      "options": [
        {
          "name": "Get Repositories",
          "value": "getRepositories",
          "description": "Returns all repositories of an organization",
          "action": "Get repositories for an organization"
        },
        {
          "name": "Get Members",
          "value": "getMembers",
          "description": "Returns all members of an organization",
          "action": "Get members for an organization"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "organization"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new pull request",
          "action": "Create a pull request"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a pull request",
          "action": "Update a pull request"
        },
        {
          "name": "Close",
          "value": "close",
          "description": "Close a pull request",
          "action": "Close a pull request"
        },
        {
          "name": "Reopen",
          "value": "reopen",
          "description": "Reopen a pull request",
          "action": "Reopen a pull request"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single pull request",
          "action": "Get a pull request"
        },
        {
          "name": "Create Comment",
          "value": "createComment",
          "description": "Create a new comment on a pull request",
          "action": "Create a comment on a pull request"
        },
        {
          "name": "Edit Comment",
          "value": "editComment",
          "description": "Edit a comment on a pull request",
          "action": "Edit a comment on a pull request"
        },
        {
          "name": "Get Diff",
          "value": "getDiff",
          "description": "Get the raw diff of a pull request",
          "action": "Get a pull request diff"
        },
        {
          "name": "Get Patch",
          "value": "getPatch",
          "description": "Get the raw patch of a pull request",
          "action": "Get a pull request patch"
        },
        {
          "name": "Merge",
          "value": "merge",
          "description": "Merge a pull request",
          "action": "Merge a pull request"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Base Branch",
      "name": "base",
      "type": "string",
      "default": "",
      "description": "The branch you want to merge into (e.g. master)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Head Branch",
      "name": "head",
      "type": "string",
      "default": "",
      "description": "The branch containing your changes. For a cross‑fork PR, use the format owner:branchname (e.g. johndoe:featurebranch).",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "description": "The title of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the pull request",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Create a Draft Pull Request",
      "name": "draft",
      "type": "boolean",
      "default": false,
      "description": "Whether to create the pull request as a draft",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "update",
            "close",
            "reopen",
            "get",
            "createComment",
            "getDiff",
            "getPatch",
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Edit Fields",
      "name": "editFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": "",
          "description": "The new title of the pull request"
        },
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The new body of the pull request"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "Open",
              "value": "open"
            },
            {
              "name": "Closed",
              "value": "closed"
            }
          ],
          "default": "",
          "description": "The state of the pull request"
        },
        {
          "displayName": "Base Branch",
          "name": "base",
          "type": "string",
          "default": "",
          "description": "The branch you want to merge into (e.g. master)"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "pullRequest"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Comment ID",
      "name": "commentId",
      "type": "number",
      "default": 0,
      "description": "The ID of the comment to edit",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "editComment"
          ],
          "resource": [
            "pullRequest"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "editComment"
          ],
          "resource": [
            "pullRequest"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Merge Method",
      "name": "mergeMethod",
      "type": "options",
      "default": "merge",
      "options": [
        {
          "name": "Merge Commit",
          "value": "merge"
        },
        {
          "name": "Squash and Merge",
          "value": "squash"
        },
        {
          "name": "Rebase and Merge",
          "value": "rebase"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Commit Title",
      "name": "commitTitle",
      "type": "string",
      "default": "",
      "description": "Title for the automatic merge commit",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Commit Message",
      "name": "commitMessage",
      "type": "string",
      "default": "",
      "description": "Extra detail to append to automatic merge commit",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      },
      "typeOptions": {
        "rows": 4
      }
    },
    {
      "displayName": "If a merge queue is required on the target branch, this request will automatically enqueue the pull request and return 202 Accepted. If no queue is required, the pull request will be merged immediately and return 200 OK.",
      "name": "mergeQueueNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "pullRequest"
          ],
          "operation": [
            "merge"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new issue",
          "action": "Create an issue"
        },
        {
          "name": "Create Comment",
          "value": "createComment",
          "description": "Create a new comment on an issue",
          "action": "Create a comment on an issue"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit an issue",
          "action": "Edit an issue"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single issue",
          "action": "Get an issue"
        },
        {
          "name": "Lock",
          "value": "lock",
          "description": "Lock an issue",
          "action": "Lock an issue"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "issue"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new file in repository",
          "action": "Create a file"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a file in repository",
          "action": "Delete a file"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit a file in repository",
          "action": "Edit a file"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single file",
          "action": "Get a file"
        },
        {
          "name": "List",
          "value": "list",
          "description": "List contents of a folder",
          "action": "List files"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getIssues",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single repository",
          "action": "Get a repository"
        },
        {
          "name": "Get Issues",
          "value": "getIssues",
          "description": "Returns issues of a repository",
          "action": "Get issues of a repository"
        },
        {
          "name": "Get License",
          "value": "getLicense",
          "description": "Returns the contents of the repository's license file, if one is detected",
          "action": "Get the license of a repository"
        },
        {
          "name": "Get Profile",
          "value": "getProfile",
          "description": "Get the community profile of a repository with metrics, health score, description, license, etc",
          "action": "Get the profile of a repository"
        },
        {
          "name": "Get Pull Requests",
          "value": "getPullRequests",
          "description": "Returns pull requests of a repository",
          "action": "Get pull requests of a repository"
        },
        {
          "name": "List Popular Paths",
          "value": "listPopularPaths",
          "description": "Get the top 10 popular content paths over the last 14 days",
          "action": "List popular paths in a repository"
        },
        {
          "name": "List Referrers",
          "value": "listReferrers",
          "description": "Get the top 10 referrering domains over the last 14 days",
          "action": "List the top referrers of a repository"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getRepositories",
      "options": [
        {
          "name": "Get Repositories",
          "value": "getRepositories",
          "description": "Returns the repositories of a user",
          "action": "Get a user's repositories"
        },
        {
          "name": "Get Issues",
          "value": "getUserIssues",
          "description": "Returns the issues assigned to the user",
          "action": "Get a user's issues"
        },
        {
          "name": "Invite",
          "value": "invite",
          "description": "Invites a user to an organization",
          "action": "Invite a user"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Creates a new release",
          "action": "Create a release"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a release",
          "action": "Delete a release"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a release",
          "action": "Get a release"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many repository releases",
          "action": "Get many releases"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a release",
          "action": "Update a release"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Creates a new review",
          "action": "Create a review"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a review for a pull request",
          "action": "Get a review"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many reviews for a pull request",
          "action": "Get many reviews"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a review",
          "action": "Update a review"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "review"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "dispatch",
      "options": [
        {
          "name": "Disable",
          "value": "disable",
          "description": "Disable a workflow",
          "action": "Disable a workflow"
        },
        {
          "name": "Dispatch",
          "value": "dispatch",
          "description": "Dispatch a workflow event",
          "action": "Dispatch a workflow event"
        },
        {
          "name": "Dispatch and Wait for Completion",
          "value": "dispatchAndWait",
          "description": "Dispatch a workflow event and wait for a webhook to be called before proceeding",
          "action": "Dispatch a workflow event and wait for completion"
        },
        {
          "name": "Enable",
          "value": "enable",
          "description": "Enable a workflow",
          "action": "Enable a workflow"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a workflow",
          "action": "Get a workflow"
        },
        {
          "name": "Get Usage",
          "value": "getUsage",
          "description": "Get the usage of a workflow",
          "action": "Get the usage of a workflow"
        },
        {
          "name": "List",
          "value": "list",
          "description": "List workflows",
          "action": "List workflows"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Your execution will pause until a webhook is called. This URL will be generated at runtime and passed to your Github workflow as a resumeUrl input.",
      "name": "webhookNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatchAndWait"
          ]
        }
      }
    },
    {
      "displayName": "Repository Owner",
      "name": "owner",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "hide": {
          "operation": [
            "invite",
            "getUserIssues"
          ]
        }
      },
      "modes": [
        {
          "displayName": "Repository Owner",
          "name": "list",
          "type": "list",
          "placeholder": "Select an owner...",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true,
            "searchFilterRequired": true
          }
        },
        {
          "displayName": "Link",
          "name": "url",
          "type": "string",
          "placeholder": "e.g. https://github.com/n8n-io",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/(?:[^/]+)\\/([-_0-9a-zA-Z]+)"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/([^/]+)\\/([-_0-9a-zA-Z]+)(?:.*)",
                "errorMessage": "Not a valid Github URL"
              }
            }
          ]
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. n8n-io",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[-_a-zA-Z0-9]+",
                "errorMessage": "Not a valid Github Owner Name"
              }
            }
          ],
          "url": "=https://github.com/{{$value}}"
        }
      ]
    },
    {
      "displayName": "Repository Name",
      "name": "repository",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "hide": {
          "resource": [
            "user",
            "organization"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      },
      "modes": [
        {
          "displayName": "Repository Name",
          "name": "list",
          "type": "list",
          "placeholder": "Select an Repository...",
          "typeOptions": {
            "searchListMethod": "getRepositories",
            "searchable": true
          }
        },
        {
          "displayName": "Link",
          "name": "url",
          "type": "string",
          "placeholder": "e.g. https://github.com/n8n-io/n8n",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/(?:[^/]+)\\/(?:[-_0-9a-zA-Z]+)\\/([-_.0-9a-zA-Z]+)"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/([^/]+)\\/(?:[-_0-9a-zA-Z]+)\\/([-_.0-9a-zA-Z]+)(?:.*)",
                "errorMessage": "Not a valid Github Repository URL"
              }
            }
          ]
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. n8n",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[-_.0-9a-zA-Z]+",
                "errorMessage": "Not a valid Github Repository Name"
              }
            }
          ],
          "url": "=https://github.com/{{$parameter[\"owner\"]}}/{{$value}}"
        }
      ]
    },
    {
      "displayName": "Workflow",
      "name": "workflowId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The workflow to dispatch",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "disable",
            "dispatch",
            "dispatchAndWait",
            "get",
            "getUsage",
            "enable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "Workflow",
          "name": "list",
          "type": "list",
          "placeholder": "Select a workflow...",
          "typeOptions": {
            "searchListMethod": "getWorkflows",
            "searchable": true
          }
        },
        {
          "displayName": "By File Name",
          "name": "filename",
          "type": "string",
          "placeholder": "e.g. main.yaml or main.yml",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9_-]+.(yaml|yml)",
                "errorMessage": "Not a valid Github Workflow File Name"
              }
            }
          ]
        },
        {
          "displayName": "By ID",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. 12345678",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "\\d+",
                "errorMessage": "Not a valid Github Workflow ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Ref",
      "name": "ref",
      "type": "string",
      "default": "main",
      "description": "The git reference for the workflow dispatch (branch or tag name)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatch",
            "dispatchAndWait"
          ],
          "@version": [
            {
              "_cnd": {
                "lte": 1
              }
            }
          ]
        }
      }
    },
    {
      "displayName": "Ref",
      "name": "ref",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The git reference for the workflow dispatch (branch, tag, or commit SHA)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatch",
            "dispatchAndWait"
          ],
          "@version": [
            {
              "_cnd": {
                "gte": 1.1
              }
            }
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "placeholder": "Select a branch, tag, or commit...",
          "typeOptions": {
            "searchListMethod": "getRefs",
            "searchable": true
          }
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. main",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[a-zA-Z0-9/._-]+$",
                "errorMessage": "Not a valid branch, tag"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Inputs",
      "name": "inputs",
      "type": "json",
      "default": "{}",
      "description": "JSON object with input parameters for the workflow",
      "displayOptions": {
        "show": {
          "resource": [
            "workflow"
          ],
          "operation": [
            "dispatch",
            "dispatchAndWait"
          ]
        }
      }
    },
    {
      "displayName": "File Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The file path of the file. Has to contain the full path.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        },
        "hide": {
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The path of the folder to list",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Binary File",
      "name": "binaryData",
      "type": "boolean",
      "default": false,
      "description": "Whether the data to upload should be taken from binary field",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "File Content",
      "name": "fileContent",
      "type": "string",
      "default": "",
      "description": "The text content of the file",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            false
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            true
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Commit Message",
      "name": "commitMessage",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "fixedCollection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "name": "author",
          "displayName": "Author",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "description": "The name of the author of the commit"
            },
            {
              "displayName": "Email",
              "name": "email",
              "type": "string",
              "placeholder": "name@email.com",
              "default": "",
              "description": "The email of the author of the commit"
            }
          ]
        },
        {
          "name": "branch",
          "displayName": "Branch",
          "values": [
            {
              "displayName": "Branch",
              "name": "branch",
              "type": "string",
              "default": "",
              "description": "The branch to commit to. If not set the repository’s default branch (usually master) is used."
            }
          ]
        },
        {
          "name": "committer",
          "displayName": "Committer",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "description": "The name of the committer of the commit"
            },
            {
              "displayName": "Email",
              "name": "email",
              "type": "string",
              "placeholder": "name@email.com",
              "default": "",
              "description": "The email of the committer of the commit"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "As Binary Property",
      "name": "asBinaryProperty",
      "type": "boolean",
      "default": true,
      "description": "Whether to set the data of the file as binary property instead of returning the raw API response",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "asBinaryProperty": [
            true
          ],
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "collection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Reference",
          "name": "reference",
          "type": "string",
          "default": "",
          "placeholder": "master",
          "description": "The name of the commit/branch/tag. Default: the repository’s default branch (usually master)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "description": "The title of the issue",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the issue",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Labels",
      "name": "labels",
      "type": "collection",
      "default": {
        "label": ""
      },
      "options": [
        {
          "displayName": "Label",
          "name": "label",
          "type": "string",
          "default": "",
          "description": "Label to add to issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Label"
      }
    },
    {
      "displayName": "Assignees",
      "name": "assignees",
      "type": "collection",
      "default": {
        "assignee": ""
      },
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee",
          "type": "string",
          "default": "",
          "description": "User to assign issue too"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Assignee"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue on which to create the comment on",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue edit",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Edit Fields",
      "name": "editFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignees",
          "name": "assignees",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Assignee"
          },
          "default": {
            "assignee": ""
          },
          "options": [
            {
              "displayName": "Assignees",
              "name": "assignee",
              "type": "string",
              "default": "",
              "description": "User to assign issue to"
            }
          ]
        },
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the issue"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Label"
          },
          "default": {
            "label": ""
          },
          "options": [
            {
              "displayName": "Label",
              "name": "label",
              "type": "string",
              "default": "",
              "description": "Label to add to issue"
            }
          ]
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "Closed",
              "value": "closed",
              "description": "Set the state to \"closed\""
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Set the state to \"open\""
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "State Reason",
          "name": "state_reason",
          "type": "options",
          "options": [
            {
              "name": "Completed",
              "value": "completed",
              "description": "Issue is completed"
            },
            {
              "name": "Not Planned",
              "value": "not_planned",
              "description": "Issue is not planned"
            },
            {
              "name": "Reopened",
              "value": "reopened",
              "description": "Issue is reopened"
            }
          ],
          "default": "completed",
          "description": "The reason for the state change"
        },
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": "",
          "description": "The title of the issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The issue number to get data for",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The issue number to lock",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Lock Reason",
      "name": "lockReason",
      "type": "options",
      "default": "resolved",
      "description": "The reason for locking the issue",
      "options": [
        {
          "name": "Off-Topic",
          "value": "off-topic",
          "description": "The issue is Off-Topic"
        },
        {
          "name": "Too Heated",
          "value": "too heated",
          "description": "The discussion is too heated"
        },
        {
          "name": "Resolved",
          "value": "resolved",
          "description": "The issue got resolved"
        },
        {
          "name": "Spam",
          "value": "spam",
          "description": "The issue is spam"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Tag",
      "name": "releaseTag",
      "type": "string",
      "default": "",
      "description": "The tag of the release",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the issue"
        },
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the release"
        },
        {
          "displayName": "Draft",
          "name": "draft",
          "type": "boolean",
          "default": false,
          "description": "Whether to create a draft (unpublished) release, \"false\" to create a published one"
        },
        {
          "displayName": "Prerelease",
          "name": "prerelease",
          "type": "boolean",
          "default": false,
          "description": "Whether to point out that the release is non-production ready"
        },
        {
          "displayName": "Target Commitish",
          "name": "target_commitish",
          "type": "string",
          "default": "",
          "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch(usually master)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Release ID",
      "name": "release_id",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "release"
          ],
          "operation": [
            "get",
            "delete",
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Body",
          "name": "body",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the release"
        },
        {
          "displayName": "Draft",
          "name": "draft",
          "type": "boolean",
          "default": false,
          "description": "Whether to create a draft (unpublished) release, \"false\" to create a published one"
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the release"
        },
        {
          "displayName": "Prerelease",
          "name": "prerelease",
          "type": "boolean",
          "default": false,
          "description": "Whether to point out that the release is non-production ready"
        },
        {
          "displayName": "Tag Name",
          "name": "tag_name",
          "type": "string",
          "default": "",
          "description": "The name of the tag"
        },
        {
          "displayName": "Target Commitish",
          "name": "target_commitish",
          "type": "string",
          "default": "",
          "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch(usually master)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "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,
        "maxValue": 100
      }
    },
    {
      "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": [
            "repository"
          ],
          "operation": [
            "getIssues"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ],
          "operation": [
            "getIssues"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "getRepositoryIssuesFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee",
          "type": "string",
          "default": "",
          "description": "Return only issues which are assigned to a specific user"
        },
        {
          "displayName": "Creator",
          "name": "creator",
          "type": "string",
          "default": "",
          "description": "Return only issues which were created by a specific user"
        },
        {
          "displayName": "Mentioned",
          "name": "mentioned",
          "type": "string",
          "default": "",
          "description": "Return only issues in which a specific user was mentioned"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "string",
          "default": "",
          "description": "Return only issues with the given labels. Multiple labels can be separated by comma."
        },
        {
          "displayName": "Updated Since",
          "name": "since",
          "type": "dateTime",
          "default": "",
          "description": "Return only issues updated at or after this time"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Returns issues with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return issues with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Return issues with \"open\" state"
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Created",
              "value": "created",
              "description": "Sort by created date"
            },
            {
              "name": "Updated",
              "value": "updated",
              "description": "Sort by updated date"
            },
            {
              "name": "Comments",
              "value": "comments",
              "description": "Sort by comments"
            }
          ],
          "default": "created",
          "description": "The order the issues should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "direction",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getIssues"
          ],
          "resource": [
            "repository"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    },
    {
      "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": [
            "repository"
          ],
          "operation": [
            "getPullRequests"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return. Maximum value is <a href=\"https://docs.github.com/en/rest/pulls/pulls?apiVersion=2022-11-28#list-pull-requests\">100</a>.",
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ],
          "operation": [
            "getPullRequests"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "getRepositoryPullRequestsFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Returns pull requests with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return pull requests with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Return pull requests with \"open\" state"
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Created",
              "value": "created",
              "description": "Sort by created date"
            },
            {
              "name": "Updated",
              "value": "updated",
              "description": "Sort by updated date"
            },
            {
              "name": "Popularity",
              "value": "popularity",
              "description": "Sort by number of comments"
            },
            {
              "name": "Long-Running",
              "value": "long-running",
              "description": "Sort by date created and will limit the results to pull requests that have been open for more than a month and have had activity within the past month"
            }
          ],
          "default": "created",
          "description": "The order the pull requests should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "direction",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getPullRequests"
          ],
          "resource": [
            "repository"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get",
            "update"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Review ID",
      "name": "reviewId",
      "type": "string",
      "default": "",
      "description": "ID of the review",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get",
            "update"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "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": [
            "review"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "review"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "PR Number",
      "name": "pullRequestNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the pull request to review",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Event",
      "name": "event",
      "type": "options",
      "default": "approve",
      "description": "The review action you want to perform",
      "options": [
        {
          "name": "Approve",
          "value": "approve",
          "description": "Approve the pull request"
        },
        {
          "name": "Request Change",
          "value": "requestChanges",
          "description": "Request code changes"
        },
        {
          "name": "Comment",
          "value": "comment",
          "description": "Add a comment without approval or change requests"
        },
        {
          "name": "Pending",
          "value": "pending",
          "description": "You will need to submit the pull request review when you are ready"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the review (required for events Request Changes or Comment)",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ],
          "event": [
            "requestChanges",
            "comment"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Commit ID",
          "name": "commitId",
          "type": "string",
          "default": "",
          "description": "The SHA of the commit that needs a review, if different from the latest"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the review",
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "review"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getRepositories"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Organization",
      "name": "organization",
      "type": "string",
      "default": "",
      "description": "The GitHub organization that the user is being invited to",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "invite"
          ],
          "resource": [
            "user"
          ]
        }
      }
    },
    {
      "displayName": "Email",
      "name": "email",
      "type": "string",
      "default": "",
      "description": "The email address of the invited user",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "invite"
          ],
          "resource": [
            "user"
          ]
        }
      }
    },
    {
      "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": [
            "organization"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "organization"
          ],
          "operation": [
            "getRepositories"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "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": [
            "organization"
          ],
          "operation": [
            "getMembers"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "organization"
          ],
          "operation": [
            "getMembers"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "operation": [
            "getUserIssues"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "operation": [
            "getUserIssues"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Filters",
      "name": "getUserIssuesFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Mentioned",
          "name": "mentioned",
          "type": "string",
          "default": "",
          "description": "Return only issues in which a specific user was mentioned"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "string",
          "default": "",
          "description": "Return only issues with the given labels. Multiple labels can be separated by comma."
        },
        {
          "displayName": "Updated Since",
          "name": "since",
          "type": "dateTime",
          "default": "",
          "description": "Return only issues updated at or after this time"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Returns issues with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return issues with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Return issues with \"open\" state"
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Created",
              "value": "created",
              "description": "Sort by created date"
            },
            {
              "name": "Updated",
              "value": "updated",
              "description": "Sort by updated date"
            },
            {
              "name": "Comments",
              "value": "comments",
              "description": "Sort by comments"
            }
          ],
          "default": "created",
          "description": "The order the issues should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "direction",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getUserIssues"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    }
  ]

operations:
  [
    {
      "operation": "getRepositories",
      "name": "Get Repositories",
      "description": "Returns all repositories of an organization",
      "resource": "organization"
    },
    {
      "operation": "getMembers",
      "name": "Get Members",
      "description": "Returns all members of an organization",
      "resource": "organization"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "close",
      "name": "Close",
      "description": "Close a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "reopen",
      "name": "Reopen",
      "description": "Reopen a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "createComment",
      "name": "Create Comment",
      "description": "Create a new comment on a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "editComment",
      "name": "Edit Comment",
      "description": "Edit a comment on a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "getDiff",
      "name": "Get Diff",
      "description": "Get the raw diff of a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "getPatch",
      "name": "Get Patch",
      "description": "Get the raw patch of a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "merge",
      "name": "Merge",
      "description": "Merge a pull request",
      "resource": "pullRequest"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new issue",
      "resource": "issue"
    },
    {
      "operation": "createComment",
      "name": "Create Comment",
      "description": "Create a new comment on an issue",
      "resource": "issue"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit an issue",
      "resource": "issue"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single issue",
      "resource": "issue"
    },
    {
      "operation": "lock",
      "name": "Lock",
      "description": "Lock an issue",
      "resource": "issue"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new file in repository",
      "resource": "file"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a file in repository",
      "resource": "file"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit a file in repository",
      "resource": "file"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single file",
      "resource": "file"
    },
    {
      "operation": "list",
      "name": "List",
      "description": "List contents of a folder",
      "resource": "file"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single repository",
      "resource": "repository"
    },
    {
      "operation": "getIssues",
      "name": "Get Issues",
      "description": "Returns issues of a repository",
      "resource": "repository"
    },
    {
      "operation": "getLicense",
      "name": "Get License",
      "description": "Returns the contents of the repository's license file, if one is detected",
      "resource": "repository"
    },
    {
      "operation": "getProfile",
      "name": "Get Profile",
      "description": "Get the community profile of a repository with metrics, health score, description, license, etc",
      "resource": "repository"
    },
    {
      "operation": "getPullRequests",
      "name": "Get Pull Requests",
      "description": "Returns pull requests of a repository",
      "resource": "repository"
    },
    {
      "operation": "listPopularPaths",
      "name": "List Popular Paths",
      "description": "Get the top 10 popular content paths over the last 14 days",
      "resource": "repository"
    },
    {
      "operation": "listReferrers",
      "name": "List Referrers",
      "description": "Get the top 10 referrering domains over the last 14 days",
      "resource": "repository"
    },
    {
      "operation": "getRepositories",
      "name": "Get Repositories",
      "description": "Returns the repositories of a user",
      "resource": "user"
    },
    {
      "operation": "getUserIssues",
      "name": "Get Issues",
      "description": "Returns the issues assigned to the user",
      "resource": "user"
    },
    {
      "operation": "invite",
      "name": "Invite",
      "description": "Invites a user to an organization",
      "resource": "user"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Creates a new release",
      "resource": "release"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a release",
      "resource": "release"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a release",
      "resource": "release"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many repository releases",
      "resource": "release"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a release",
      "resource": "release"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Creates a new review",
      "resource": "review"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a review for a pull request",
      "resource": "review"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many reviews for a pull request",
      "resource": "review"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a review",
      "resource": "review"
    },
    {
      "operation": "disable",
      "name": "Disable",
      "description": "Disable a workflow",
      "resource": "workflow"
    },
    {
      "operation": "dispatch",
      "name": "Dispatch",
      "description": "Dispatch a workflow event",
      "resource": "workflow"
    },
    {
      "operation": "dispatchAndWait",
      "name": "Dispatch and Wait for Completion",
      "description": "Dispatch a workflow event and wait for a webhook to be called before proceeding",
      "resource": "workflow"
    },
    {
      "operation": "enable",
      "name": "Enable",
      "description": "Enable a workflow",
      "resource": "workflow"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a workflow",
      "resource": "workflow"
    },
    {
      "operation": "getUsage",
      "name": "Get Usage",
      "description": "Get the usage of a workflow",
      "resource": "workflow"
    },
    {
      "operation": "list",
      "name": "List",
      "description": "List workflows",
      "resource": "workflow"
    }
  ]

credentials_required:
  [
    {
      "name": "githubApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "accessToken"
          ]
        }
      }
    },
    {
      "name": "githubOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ]
        }
      }
    },
    {
      "name": "githubAppApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "githubAppApi"
          ]
        }
      }
    }
  ]


node_type: nodes-base.githubTrigger
package_name: n8n-nodes-base
display_name: Github Trigger
description: Starts the workflow when Github events occur
category: trigger
development_style: programmatic
version: 1
operations: []
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: GitHub Trigger node documentation
  description: Learn how to use the GitHub Trigger node in n8n. Follow technical documentation to integrate GitHub Trigger node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # GitHub Trigger node

  [GitHub](https://github.com/){:target=_blank .external-link} provides hosting for software development and version control using Git. It offers the distributed version control and source code management (SCM) functionality of Git, access control and several collaboration features such as bug tracking, feature requests, task management, and wikis for every project.

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

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

properties_schema:
  [
    {
      "displayName": "Only members with owner privileges for an organization or admin privileges for a repository can set up the webhooks this node requires.",
      "name": "notice",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        },
        {
          "name": "GitHub App",
          "value": "githubAppApi"
        }
      ]
    },
    {
      "displayName": "Repository Owner",
      "name": "owner",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "modes": [
        {
          "displayName": "Repository Owner",
          "name": "list",
          "type": "list",
          "placeholder": "Select an owner...",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true,
            "searchFilterRequired": true
          }
        },
        {
          "displayName": "Link",
          "name": "url",
          "type": "string",
          "placeholder": "e.g. https://github.com/n8n-io",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/(?:[^/]+)\\/([-_0-9a-zA-Z]+)"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/([^/]+)\\/([-_0-9a-zA-Z]+)(?:.*)",
                "errorMessage": "Not a valid Github URL"
              }
            }
          ]
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. n8n-io",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[-_a-zA-Z0-9]+",
                "errorMessage": "Not a valid Github Owner Name"
              }
            }
          ],
          "url": "=https://github.com/{{$value}}"
        }
      ]
    },
    {
      "displayName": "Repository Name",
      "name": "repository",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "modes": [
        {
          "displayName": "Repository Name",
          "name": "list",
          "type": "list",
          "placeholder": "Select an Repository...",
          "typeOptions": {
            "searchListMethod": "getRepositories",
            "searchable": true
          }
        },
        {
          "displayName": "Link",
          "name": "url",
          "type": "string",
          "placeholder": "e.g. https://github.com/n8n-io/n8n",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/(?:[^/]+)\\/(?:[-_0-9a-zA-Z]+)\\/([-_.0-9a-zA-Z]+)"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/([^/]+)\\/(?:[-_0-9a-zA-Z]+)\\/([-_.0-9a-zA-Z]+)(?:.*)",
                "errorMessage": "Not a valid Github Repository URL"
              }
            }
          ]
        },
        {
          "displayName": "By Name",
          "name": "name",
          "type": "string",
          "placeholder": "e.g. n8n",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[-_.0-9a-zA-Z]+",
                "errorMessage": "Not a valid Github Repository Name"
              }
            }
          ],
          "url": "=https://github.com/{{$parameter[\"owner\"]}}/{{$value}}"
        }
      ]
    },
    {
      "displayName": "Events",
      "name": "events",
      "type": "multiOptions",
      "default": [],
      "description": "The events to listen to",
      "options": [
        {
          "name": "*",
          "value": "*",
          "description": "Any time any event is triggered (Wildcard Event)"
        },
        {
          "name": "Check Run",
          "value": "check_run",
          "description": "Triggered when a check run is created, rerequested, completed, or has a requested_action"
        },
        {
          "name": "Check Suite",
          "value": "check_suite",
          "description": "Triggered when a check suite is completed, requested, or rerequested"
        },
        {
          "name": "Commit Comment",
          "value": "commit_comment",
          "description": "Triggered when a commit comment is created"
        },
        {
          "name": "Create",
          "value": "create",
          "description": "Represents a created repository, branch, or tag"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Represents a deleted branch or tag"
        },
        {
          "name": "Deploy Key",
          "value": "deploy_key",
          "description": "Triggered when a deploy key is added or removed from a repository"
        },
        {
          "name": "Deployment",
          "value": "deployment",
          "description": "Represents a deployment"
        },
        {
          "name": "Deployment Status",
          "value": "deployment_status",
          "description": "Represents a deployment status"
        },
        {
          "name": "Fork",
          "value": "fork",
          "description": "Triggered when a user forks a repository"
        },
        {
          "name": "Github App Authorization",
          "value": "github_app_authorization",
          "description": "Triggered when someone revokes their authorization of a GitHub App"
        },
        {
          "name": "Gollum",
          "value": "gollum",
          "description": "Triggered when a Wiki page is created or updated"
        },
        {
          "name": "Installation",
          "value": "installation",
          "description": "Triggered when someone installs (created), uninstalls (deleted), or accepts new permissions (new_permissions_accepted) for a GitHub App. When a GitHub App owner requests new permissions, the person who installed the GitHub App must accept the new permissions request."
        },
        {
          "name": "Installation Repositories",
          "value": "installation_repositories",
          "description": "Triggered when a repository is added or removed from an installation"
        },
        {
          "name": "Issue Comment",
          "value": "issue_comment",
          "description": "Triggered when an issue comment is created, edited, or deleted"
        },
        {
          "name": "Issues",
          "value": "issues",
          "description": "Triggered when an issue is opened, edited, deleted, transferred, pinned, unpinned, closed, reopened, assigned, unassigned, labeled, unlabeled, locked, unlocked, milestoned, or demilestoned"
        },
        {
          "name": "Label",
          "value": "label",
          "description": "Triggered when a repository's label is created, edited, or deleted"
        },
        {
          "name": "Marketplace Purchase",
          "value": "marketplace_purchase",
          "description": "Triggered when someone purchases a GitHub Marketplace plan, cancels their plan, upgrades their plan (effective immediately), downgrades a plan that remains pending until the end of the billing cycle, or cancels a pending plan change"
        },
        {
          "name": "Member",
          "value": "member",
          "description": "Triggered when a user accepts an invitation or is removed as a collaborator to a repository, or has their permissions changed"
        },
        {
          "name": "Membership",
          "value": "membership",
          "description": "Triggered when a user is added or removed from a team. Organization hooks only."
        },
        {
          "name": "Meta",
          "value": "meta",
          "description": "Triggered when the webhook that this event is configured on is deleted"
        },
        {
          "name": "Milestone",
          "value": "milestone",
          "description": "Triggered when a milestone is created, closed, opened, edited, or deleted"
        },
        {
          "name": "Org Block",
          "value": "org_block",
          "description": "Triggered when an organization blocks or unblocks a user. Organization hooks only."
        },
        {
          "name": "Organization",
          "value": "organization",
          "description": "Triggered when an organization is deleted and renamed, and when a user is added, removed, or invited to an organization. Organization hooks only."
        },
        {
          "name": "Page Build",
          "value": "page_build",
          "description": "Triggered on push to a GitHub Pages enabled branch (gh-pages for project pages, master for user and organization pages)"
        },
        {
          "name": "Project",
          "value": "project",
          "description": "Triggered when a project is created, updated, closed, reopened, or deleted"
        },
        {
          "name": "Project Card",
          "value": "project_card",
          "description": "Triggered when a project card is created, edited, moved, converted to an issue, or deleted"
        },
        {
          "name": "Project Column",
          "value": "project_column",
          "description": "Triggered when a project column is created, updated, moved, or deleted"
        },
        {
          "name": "Public",
          "value": "public",
          "description": "Triggered when a private repository is open sourced"
        },
        {
          "name": "Pull Request",
          "value": "pull_request",
          "description": "Triggered when a pull request is assigned, unassigned, labeled, unlabeled, opened, edited, closed, reopened, synchronize, ready_for_review, locked, unlocked, a pull request review is requested, or a review request is removed"
        },
        {
          "name": "Pull Request Review",
          "value": "pull_request_review",
          "description": "Triggered when a pull request review is submitted into a non-pending state, the body is edited, or the review is dismissed"
        },
        {
          "name": "Pull Request Review Comment",
          "value": "pull_request_review_comment",
          "description": "Triggered when a comment on a pull request's unified diff is created, edited, or deleted (in the Files Changed tab)"
        },
        {
          "name": "Push",
          "value": "push",
          "description": "Triggered on a push to a repository branch. Branch pushes and repository tag pushes also trigger webhook push events. This is the default event."
        },
        {
          "name": "Release",
          "value": "release",
          "description": "Triggered when a release is published, unpublished, created, edited, deleted, or prereleased"
        },
        {
          "name": "Repository",
          "value": "repository",
          "description": "Triggered when a repository is created, archived, unarchived, renamed, edited, transferred, made public, or made private. Organization hooks are also triggered when a repository is deleted."
        },
        {
          "name": "Repository Import",
          "value": "repository_import",
          "description": "Triggered when a successful, cancelled, or failed repository import finishes for a GitHub organization or a personal repository"
        },
        {
          "name": "Repository Vulnerability Alert",
          "value": "repository_vulnerability_alert",
          "description": "Triggered when a security alert is created, dismissed, or resolved"
        },
        {
          "name": "Security Advisory",
          "value": "security_advisory",
          "description": "Triggered when a new security advisory is published, updated, or withdrawn"
        },
        {
          "name": "Star",
          "value": "star",
          "description": "Triggered when a star is added or removed from a repository"
        },
        {
          "name": "Status",
          "value": "status",
          "description": "Triggered when the status of a Git commit changes"
        },
        {
          "name": "Team",
          "value": "team",
          "description": "Triggered when an organization's team is created, deleted, edited, added_to_repository, or removed_from_repository. Organization hooks only."
        },
        {
          "name": "Team Add",
          "value": "team_add",
          "description": "Triggered when a repository is added to a team"
        },
        {
          "name": "Watch",
          "value": "watch",
          "description": "Triggered when someone stars a repository"
        }
      ],
      "required": true
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Insecure SSL",
          "name": "insecureSSL",
          "type": "boolean",
          "default": false,
          "description": "Whether the SSL certificate of the n8n host be verified by GitHub when delivering payloads"
        }
      ]
    }
  ]

credentials_required:
  [
    {
      "name": "githubApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "accessToken"
          ]
        }
      }
    },
    {
      "name": "githubOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ]
        }
      }
    },
    {
      "name": "githubAppApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "githubAppApi"
          ]
        }
      }
    }
  ]


node_type: nodes-base.gitlabTool
package_name: n8n-nodes-base
display_name: GitLab Tool
description: Retrieve data from GitLab API (AI Tool variant for use with AI Agents)
category: input
development_style: programmatic
version: 1
outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-07-16 12:10:22
tool_variant_of: nodes-base.gitlab
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: GitLab node documentation
  description: Learn how to use the GitLab node in n8n. Follow technical documentation to integrate GitLab node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # GitLab node

  Use the GitLab node to automate work in GitLab, and integrate GitLab with other applications. n8n has built-in support for a wide range of GitLab features, including creating, updating, deleting, and editing issues, repositories, releases and users. 

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

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

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

  ## Operations

  * File
  	* Create
  	* Delete
  	* Edit
  	* Get
  	* List
  * Issue
      * Create a new issue
      * Create a new comment on an issue
      * Edit an issue
      * Get the data of a single issue
      * Lock an issue
  * Release
      * Create a new release
      * Delete a new release
      * Get a new release
      * Get all releases
      * Update a new release
  * Repository
      * Get the data of a single repository
      * Returns issues of a repository
  * User
      * Returns the repositories of a user

  ## Templates and examples

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

  ## Related resources

  Refer to [GitLab's documentation](https://docs.gitlab.com/ee/api/rest/){:target=_blank .external-link} for more information about the service.

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

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

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with GitLab"
    },
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "issue",
      "options": [
        {
          "name": "File",
          "value": "file"
        },
        {
          "name": "Issue",
          "value": "issue"
        },
        {
          "name": "Release",
          "value": "release"
        },
        {
          "name": "Repository",
          "value": "repository"
        },
        {
          "name": "User",
          "value": "user"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new issue",
          "action": "Create an issue"
        },
        {
          "name": "Create Comment",
          "value": "createComment",
          "description": "Create a new comment on an issue",
          "action": "Create a comment on an issue"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit an issue",
          "action": "Edit an issue"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single issue",
          "action": "Get an issue"
        },
        {
          "name": "Lock",
          "value": "lock",
          "description": "Lock an issue",
          "action": "Lock an issue"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "issue"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getIssues",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single repository",
          "action": "Get a repository"
        },
        {
          "name": "Get Issues",
          "value": "getIssues",
          "description": "Returns issues of a repository",
          "action": "Get issues of a repository"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getRepositories",
      "options": [
        {
          "name": "Get Repositories",
          "value": "getRepositories",
          "description": "Returns the repositories of a user",
          "action": "Get a user's repositories"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new release",
          "action": "Create a release"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a release",
          "action": "Delete a release"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a release",
          "action": "Get a release"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get 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": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new file in repository",
          "action": "Create a file"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a file in repository",
          "action": "Delete a file"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit a file in repository",
          "action": "Edit a file"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single file",
          "action": "Get a file"
        },
        {
          "name": "List",
          "value": "list",
          "description": "List contents of a folder",
          "action": "List files"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Project Owner",
      "name": "owner",
      "type": "string",
      "default": "",
      "description": "User, group or namespace of the project",
      "required": true
    },
    {
      "displayName": "Project Name",
      "name": "repository",
      "type": "string",
      "default": "",
      "description": "The name of the project",
      "required": true,
      "displayOptions": {
        "hide": {
          "resource": [
            "user"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      }
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "description": "The title of the issue",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the issue",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Due Date",
      "name": "due_date",
      "type": "dateTime",
      "default": "",
      "description": "Due Date for issue",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Labels",
      "name": "labels",
      "type": "collection",
      "default": {
        "label": ""
      },
      "options": [
        {
          "displayName": "Label",
          "name": "label",
          "type": "string",
          "default": "",
          "description": "Label to add to issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Label"
      }
    },
    {
      "displayName": "Assignees",
      "name": "assignee_ids",
      "type": "collection",
      "default": {
        "assignee": ""
      },
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee",
          "type": "number",
          "default": 0,
          "description": "User ID to assign issue to"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Assignee"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue on which to create the comment on",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue edit",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Edit Fields",
      "name": "editFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": "",
          "description": "The title of the issue"
        },
        {
          "displayName": "Body",
          "name": "description",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the issue"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "Closed",
              "value": "closed",
              "description": "Set the state to \"closed\""
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Set the state to \"open\""
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Label"
          },
          "default": {
            "label": ""
          },
          "options": [
            {
              "displayName": "Label",
              "name": "label",
              "type": "string",
              "default": "",
              "description": "Label to add to issue"
            }
          ]
        },
        {
          "displayName": "Assignees",
          "name": "assignee_ids",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Assignee"
          },
          "default": {
            "assignee": ""
          },
          "options": [
            {
              "displayName": "Assignees",
              "name": "assignee",
              "type": "string",
              "default": "",
              "description": "User to assign issue too"
            }
          ]
        },
        {
          "displayName": "Due Date",
          "name": "due_date",
          "type": "dateTime",
          "default": "",
          "description": "Due Date for issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue get data of",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue to lock",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Lock Reason",
      "name": "lockReason",
      "type": "options",
      "default": "resolved",
      "description": "The reason to lock the issue",
      "options": [
        {
          "name": "Off-Topic",
          "value": "off-topic",
          "description": "The issue is Off-Topic"
        },
        {
          "name": "Too Heated",
          "value": "too heated",
          "description": "The discussion is too heated"
        },
        {
          "name": "Resolved",
          "value": "resolved",
          "description": "The issue got resolved"
        },
        {
          "name": "Spam",
          "value": "spam",
          "description": "The issue is spam"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Tag",
      "name": "releaseTag",
      "type": "string",
      "default": "",
      "description": "The tag of the release",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the release"
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The description of the release"
        },
        {
          "displayName": "Ref",
          "name": "ref",
          "type": "string",
          "default": "",
          "description": "If Tag doesn’t exist, the release will be created from Ref. It can be a commit SHA, another tag name, or a branch name."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Project ID",
      "name": "projectId",
      "type": "string",
      "default": "",
      "description": "The ID or URL-encoded path of the project",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "delete",
            "get"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Tag Name",
      "name": "tag_name",
      "type": "string",
      "default": "",
      "description": "The Git tag the release is associated with",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "delete",
            "get"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Project ID",
      "name": "projectId",
      "type": "string",
      "default": "",
      "description": "The ID or URL-encoded path of the project",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "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",
            "file",
            "repository"
          ],
          "operation": [
            "getAll",
            "list",
            "getIssues"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 20,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "release",
            "file",
            "repository"
          ],
          "operation": [
            "getAll",
            "list",
            "getIssues"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Order By",
          "name": "order_by",
          "type": "options",
          "options": [
            {
              "name": "Created At",
              "value": "created_at"
            },
            {
              "name": "Released At",
              "value": "released_at"
            }
          ],
          "default": "released_at",
          "description": "The field to use as order"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "ASC",
              "value": "asc"
            },
            {
              "name": "DESC",
              "value": "desc"
            }
          ],
          "default": "desc",
          "description": "The direction of the order. ."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Project ID",
      "name": "projectId",
      "type": "string",
      "default": "",
      "description": "The ID or URL-encoded path of the project",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Tag Name",
      "name": "tag_name",
      "type": "string",
      "default": "",
      "description": "The Git tag the release is associated with",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The release name"
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "The description of the release. You can use Markdown."
        },
        {
          "displayName": "Milestones",
          "name": "milestones",
          "type": "string",
          "default": "",
          "description": "The title of each milestone to associate with the release (provide a titles list spearated with comma)"
        },
        {
          "displayName": "Released At",
          "name": "released_at",
          "type": "dateTime",
          "default": "",
          "description": "The date when the release is/was ready"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Filters",
      "name": "getRepositoryIssuesFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee_username",
          "type": "string",
          "default": "",
          "description": "Return only issues which are assigned to a specific user"
        },
        {
          "displayName": "Creator",
          "name": "author_username",
          "type": "string",
          "default": "",
          "description": "Return only issues which were created by a specific user"
        },
        {
          "displayName": "Search",
          "name": "search",
          "type": "string",
          "default": "",
          "description": "Search issues against their title and description"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "string",
          "default": "",
          "description": "Return only issues with the given labels. Multiple lables can be separated by comma."
        },
        {
          "displayName": "Updated After",
          "name": "updated_after",
          "type": "dateTime",
          "default": "",
          "description": "Return only issues updated at or after this time"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "",
              "description": "Returns issues with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return issues with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "opened",
              "description": "Return issues with \"open\" state"
            }
          ],
          "default": "opened",
          "description": "The state to filter by"
        },
        {
          "displayName": "Sort",
          "name": "order_by",
          "type": "options",
          "options": [
            {
              "name": "Created At",
              "value": "created_at",
              "description": "Sort by created date"
            },
            {
              "name": "Updated At",
              "value": "updated_at",
              "description": "Sort by updated date"
            },
            {
              "name": "Priority",
              "value": "priority",
              "description": "Sort by priority"
            }
          ],
          "default": "created_at",
          "description": "The order the issues should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getIssues"
          ],
          "resource": [
            "repository"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    },
    {
      "displayName": "File Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The file path of the file. Has to contain the full path or leave it empty for root folder.",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        },
        "hide": {
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The path of the folder to list",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Page",
      "name": "page",
      "type": "number",
      "default": 1,
      "description": "Page of results to display",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 1000
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "collection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Reference",
          "name": "ref",
          "type": "string",
          "default": "",
          "placeholder": "main",
          "description": "The name of the commit/branch/tag. Default: the repository’s default branch (usually main)."
        },
        {
          "displayName": "Recursive",
          "name": "recursive",
          "type": "boolean",
          "default": false,
          "description": "Whether or not to get a recursive file tree. Default is false."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "As Binary Property",
      "name": "asBinaryProperty",
      "type": "boolean",
      "default": true,
      "description": "Whether to set the data of the file as binary property instead of returning the raw API response",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "asBinaryProperty": [
            true
          ],
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "collection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Reference",
          "name": "reference",
          "type": "string",
          "default": "",
          "placeholder": "main",
          "description": "The name of the commit/branch/tag. Default: the repository’s default branch (usually main)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Binary File",
      "name": "binaryData",
      "type": "boolean",
      "default": false,
      "description": "Whether the data to upload should be taken from binary field",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "File Content",
      "name": "fileContent",
      "type": "string",
      "default": "",
      "description": "The text content of the file",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            false
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            true
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Commit Message",
      "name": "commitMessage",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Branch",
      "name": "branch",
      "type": "string",
      "default": "",
      "description": "Name of the new branch to create. The commit is added to this branch.",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "fixedCollection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Start Branch",
          "name": "branchStart",
          "values": [
            {
              "displayName": "Start Branch",
              "name": "branchStart",
              "type": "string",
              "default": "",
              "description": "Name of the base branch to create the new branch from"
            }
          ]
        },
        {
          "name": "author",
          "displayName": "Author",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "description": "The name of the author of the commit"
            },
            {
              "displayName": "Email",
              "name": "email",
              "type": "string",
              "placeholder": "name@email.com",
              "default": "",
              "description": "The email of the author of the commit"
            }
          ]
        },
        {
          "name": "encoding",
          "displayName": "Encoding",
          "values": [
            {
              "displayName": "Encoding",
              "name": "encoding",
              "type": "string",
              "default": "text",
              "description": "Change encoding to base64. Default is text."
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new issue",
      "resource": "issue"
    },
    {
      "operation": "createComment",
      "name": "Create Comment",
      "description": "Create a new comment on an issue",
      "resource": "issue"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit an issue",
      "resource": "issue"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single issue",
      "resource": "issue"
    },
    {
      "operation": "lock",
      "name": "Lock",
      "description": "Lock an issue",
      "resource": "issue"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single repository",
      "resource": "repository"
    },
    {
      "operation": "getIssues",
      "name": "Get Issues",
      "description": "Returns issues of a repository",
      "resource": "repository"
    },
    {
      "operation": "getRepositories",
      "name": "Get Repositories",
      "description": "Returns the repositories of a user",
      "resource": "user"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new release",
      "resource": "release"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a release",
      "resource": "release"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a release",
      "resource": "release"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many releases",
      "resource": "release"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a release",
      "resource": "release"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new file in repository",
      "resource": "file"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a file in repository",
      "resource": "file"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit a file in repository",
      "resource": "file"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single file",
      "resource": "file"
    },
    {
      "operation": "list",
      "name": "List",
      "description": "List contents of a folder",
      "resource": "file"
    }
  ]

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


node_type: nodes-base.gitlab
package_name: n8n-nodes-base
display_name: GitLab
description: Retrieve data from GitLab API
category: input
development_style: programmatic
version: 1
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: GitLab node documentation
  description: Learn how to use the GitLab node in n8n. Follow technical documentation to integrate GitLab node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # GitLab node

  Use the GitLab node to automate work in GitLab, and integrate GitLab with other applications. n8n has built-in support for a wide range of GitLab features, including creating, updating, deleting, and editing issues, repositories, releases and users. 

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

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

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

  ## Operations

  * File
  	* Create
  	* Delete
  	* Edit
  	* Get
  	* List
  * Issue
      * Create a new issue
      * Create a new comment on an issue
      * Edit an issue
      * Get the data of a single issue
      * Lock an issue
  * Release
      * Create a new release
      * Delete a new release
      * Get a new release
      * Get all releases
      * Update a new release
  * Repository
      * Get the data of a single repository
      * Returns issues of a repository
  * User
      * Returns the repositories of a user

  ## Templates and examples

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

  ## Related resources

  Refer to [GitLab's documentation](https://docs.gitlab.com/ee/api/rest/){:target=_blank .external-link} for more information about the service.

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

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

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "issue",
      "options": [
        {
          "name": "File",
          "value": "file"
        },
        {
          "name": "Issue",
          "value": "issue"
        },
        {
          "name": "Release",
          "value": "release"
        },
        {
          "name": "Repository",
          "value": "repository"
        },
        {
          "name": "User",
          "value": "user"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new issue",
          "action": "Create an issue"
        },
        {
          "name": "Create Comment",
          "value": "createComment",
          "description": "Create a new comment on an issue",
          "action": "Create a comment on an issue"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit an issue",
          "action": "Edit an issue"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single issue",
          "action": "Get an issue"
        },
        {
          "name": "Lock",
          "value": "lock",
          "description": "Lock an issue",
          "action": "Lock an issue"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "issue"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getIssues",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single repository",
          "action": "Get a repository"
        },
        {
          "name": "Get Issues",
          "value": "getIssues",
          "description": "Returns issues of a repository",
          "action": "Get issues of a repository"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "repository"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getRepositories",
      "options": [
        {
          "name": "Get Repositories",
          "value": "getRepositories",
          "description": "Returns the repositories of a user",
          "action": "Get a user's repositories"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new release",
          "action": "Create a release"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a release",
          "action": "Delete a release"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a release",
          "action": "Get a release"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get 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": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new file in repository",
          "action": "Create a file"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a file in repository",
          "action": "Delete a file"
        },
        {
          "name": "Edit",
          "value": "edit",
          "description": "Edit a file in repository",
          "action": "Edit a file"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get the data of a single file",
          "action": "Get a file"
        },
        {
          "name": "List",
          "value": "list",
          "description": "List contents of a folder",
          "action": "List files"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Project Owner",
      "name": "owner",
      "type": "string",
      "default": "",
      "description": "User, group or namespace of the project",
      "required": true
    },
    {
      "displayName": "Project Name",
      "name": "repository",
      "type": "string",
      "default": "",
      "description": "The name of the project",
      "required": true,
      "displayOptions": {
        "hide": {
          "resource": [
            "user"
          ],
          "operation": [
            "getRepositories"
          ]
        }
      }
    },
    {
      "displayName": "Title",
      "name": "title",
      "type": "string",
      "default": "",
      "description": "The title of the issue",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the issue",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Due Date",
      "name": "due_date",
      "type": "dateTime",
      "default": "",
      "description": "Due Date for issue",
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Labels",
      "name": "labels",
      "type": "collection",
      "default": {
        "label": ""
      },
      "options": [
        {
          "displayName": "Label",
          "name": "label",
          "type": "string",
          "default": "",
          "description": "Label to add to issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Label"
      }
    },
    {
      "displayName": "Assignees",
      "name": "assignee_ids",
      "type": "collection",
      "default": {
        "assignee": ""
      },
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee",
          "type": "number",
          "default": 0,
          "description": "User ID to assign issue to"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true,
        "multipleValueButtonText": "Add Assignee"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue on which to create the comment on",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Body",
      "name": "body",
      "type": "string",
      "default": "",
      "description": "The body of the comment",
      "displayOptions": {
        "show": {
          "operation": [
            "createComment"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "rows": 5
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue edit",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Edit Fields",
      "name": "editFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Title",
          "name": "title",
          "type": "string",
          "default": "",
          "description": "The title of the issue"
        },
        {
          "displayName": "Body",
          "name": "description",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The body of the issue"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "Closed",
              "value": "closed",
              "description": "Set the state to \"closed\""
            },
            {
              "name": "Open",
              "value": "open",
              "description": "Set the state to \"open\""
            }
          ],
          "default": "open",
          "description": "The state to set"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Label"
          },
          "default": {
            "label": ""
          },
          "options": [
            {
              "displayName": "Label",
              "name": "label",
              "type": "string",
              "default": "",
              "description": "Label to add to issue"
            }
          ]
        },
        {
          "displayName": "Assignees",
          "name": "assignee_ids",
          "type": "collection",
          "typeOptions": {
            "multipleValues": true,
            "multipleValueButtonText": "Add Assignee"
          },
          "default": {
            "assignee": ""
          },
          "options": [
            {
              "displayName": "Assignees",
              "name": "assignee",
              "type": "string",
              "default": "",
              "description": "User to assign issue too"
            }
          ]
        },
        {
          "displayName": "Due Date",
          "name": "due_date",
          "type": "dateTime",
          "default": "",
          "description": "Due Date for issue"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "edit"
          ],
          "resource": [
            "issue"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue get data of",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Issue Number",
      "name": "issueNumber",
      "type": "number",
      "default": 0,
      "description": "The number of the issue to lock",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Lock Reason",
      "name": "lockReason",
      "type": "options",
      "default": "resolved",
      "description": "The reason to lock the issue",
      "options": [
        {
          "name": "Off-Topic",
          "value": "off-topic",
          "description": "The issue is Off-Topic"
        },
        {
          "name": "Too Heated",
          "value": "too heated",
          "description": "The discussion is too heated"
        },
        {
          "name": "Resolved",
          "value": "resolved",
          "description": "The issue got resolved"
        },
        {
          "name": "Spam",
          "value": "spam",
          "description": "The issue is spam"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "lock"
          ],
          "resource": [
            "issue"
          ]
        }
      }
    },
    {
      "displayName": "Tag",
      "name": "releaseTag",
      "type": "string",
      "default": "",
      "description": "The tag of the release",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the release"
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "typeOptions": {
            "rows": 5
          },
          "default": "",
          "description": "The description of the release"
        },
        {
          "displayName": "Ref",
          "name": "ref",
          "type": "string",
          "default": "",
          "description": "If Tag doesn’t exist, the release will be created from Ref. It can be a commit SHA, another tag name, or a branch name."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Project ID",
      "name": "projectId",
      "type": "string",
      "default": "",
      "description": "The ID or URL-encoded path of the project",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "delete",
            "get"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Tag Name",
      "name": "tag_name",
      "type": "string",
      "default": "",
      "description": "The Git tag the release is associated with",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "delete",
            "get"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Project ID",
      "name": "projectId",
      "type": "string",
      "default": "",
      "description": "The ID or URL-encoded path of the project",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "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",
            "file",
            "repository"
          ],
          "operation": [
            "getAll",
            "list",
            "getIssues"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 20,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "release",
            "file",
            "repository"
          ],
          "operation": [
            "getAll",
            "list",
            "getIssues"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 100
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Order By",
          "name": "order_by",
          "type": "options",
          "options": [
            {
              "name": "Created At",
              "value": "created_at"
            },
            {
              "name": "Released At",
              "value": "released_at"
            }
          ],
          "default": "released_at",
          "description": "The field to use as order"
        },
        {
          "displayName": "Sort",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "ASC",
              "value": "asc"
            },
            {
              "name": "DESC",
              "value": "desc"
            }
          ],
          "default": "desc",
          "description": "The direction of the order. ."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getAll"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Project ID",
      "name": "projectId",
      "type": "string",
      "default": "",
      "description": "The ID or URL-encoded path of the project",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Tag Name",
      "name": "tag_name",
      "type": "string",
      "default": "",
      "description": "The Git tag the release is associated with",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The release name"
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "The description of the release. You can use Markdown."
        },
        {
          "displayName": "Milestones",
          "name": "milestones",
          "type": "string",
          "default": "",
          "description": "The title of each milestone to associate with the release (provide a titles list spearated with comma)"
        },
        {
          "displayName": "Released At",
          "name": "released_at",
          "type": "dateTime",
          "default": "",
          "description": "The date when the release is/was ready"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "update"
          ],
          "resource": [
            "release"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field"
      }
    },
    {
      "displayName": "Filters",
      "name": "getRepositoryIssuesFilters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignee",
          "name": "assignee_username",
          "type": "string",
          "default": "",
          "description": "Return only issues which are assigned to a specific user"
        },
        {
          "displayName": "Creator",
          "name": "author_username",
          "type": "string",
          "default": "",
          "description": "Return only issues which were created by a specific user"
        },
        {
          "displayName": "Search",
          "name": "search",
          "type": "string",
          "default": "",
          "description": "Search issues against their title and description"
        },
        {
          "displayName": "Labels",
          "name": "labels",
          "type": "string",
          "default": "",
          "description": "Return only issues with the given labels. Multiple lables can be separated by comma."
        },
        {
          "displayName": "Updated After",
          "name": "updated_after",
          "type": "dateTime",
          "default": "",
          "description": "Return only issues updated at or after this time"
        },
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "",
              "description": "Returns issues with any state"
            },
            {
              "name": "Closed",
              "value": "closed",
              "description": "Return issues with \"closed\" state"
            },
            {
              "name": "Open",
              "value": "opened",
              "description": "Return issues with \"open\" state"
            }
          ],
          "default": "opened",
          "description": "The state to filter by"
        },
        {
          "displayName": "Sort",
          "name": "order_by",
          "type": "options",
          "options": [
            {
              "name": "Created At",
              "value": "created_at",
              "description": "Sort by created date"
            },
            {
              "name": "Updated At",
              "value": "updated_at",
              "description": "Sort by updated date"
            },
            {
              "name": "Priority",
              "value": "priority",
              "description": "Sort by priority"
            }
          ],
          "default": "created_at",
          "description": "The order the issues should be returned in"
        },
        {
          "displayName": "Direction",
          "name": "sort",
          "type": "options",
          "options": [
            {
              "name": "Ascending",
              "value": "asc",
              "description": "Sort in ascending order"
            },
            {
              "name": "Descending",
              "value": "desc",
              "description": "Sort in descending order"
            }
          ],
          "default": "desc",
          "description": "The sort order"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "getIssues"
          ],
          "resource": [
            "repository"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Filter"
      }
    },
    {
      "displayName": "File Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The file path of the file. Has to contain the full path or leave it empty for root folder.",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ]
        },
        "hide": {
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "description": "The path of the folder to list",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "Page",
      "name": "page",
      "type": "number",
      "default": 1,
      "description": "Page of results to display",
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 1000
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "collection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Reference",
          "name": "ref",
          "type": "string",
          "default": "",
          "placeholder": "main",
          "description": "The name of the commit/branch/tag. Default: the repository’s default branch (usually main)."
        },
        {
          "displayName": "Recursive",
          "name": "recursive",
          "type": "boolean",
          "default": false,
          "description": "Whether or not to get a recursive file tree. Default is false."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "file"
          ],
          "operation": [
            "list"
          ]
        }
      }
    },
    {
      "displayName": "As Binary Property",
      "name": "asBinaryProperty",
      "type": "boolean",
      "default": true,
      "description": "Whether to set the data of the file as binary property instead of returning the raw API response",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Put Output File in Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "asBinaryProperty": [
            true
          ],
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "collection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Reference",
          "name": "reference",
          "type": "string",
          "default": "",
          "placeholder": "main",
          "description": "The name of the commit/branch/tag. Default: the repository’s default branch (usually main)."
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Binary File",
      "name": "binaryData",
      "type": "boolean",
      "default": false,
      "description": "Whether the data to upload should be taken from binary field",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "File Content",
      "name": "fileContent",
      "type": "string",
      "default": "",
      "description": "The text content of the file",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            false
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Input Binary Field",
      "name": "binaryPropertyName",
      "type": "string",
      "default": "data",
      "required": true,
      "displayOptions": {
        "show": {
          "binaryData": [
            true
          ],
          "operation": [
            "create",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Commit Message",
      "name": "commitMessage",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Branch",
      "name": "branch",
      "type": "string",
      "default": "",
      "description": "Name of the new branch to create. The commit is added to this branch.",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    },
    {
      "displayName": "Additional Parameters",
      "name": "additionalParameters",
      "type": "fixedCollection",
      "default": {},
      "description": "Additional fields to add",
      "options": [
        {
          "displayName": "Start Branch",
          "name": "branchStart",
          "values": [
            {
              "displayName": "Start Branch",
              "name": "branchStart",
              "type": "string",
              "default": "",
              "description": "Name of the base branch to create the new branch from"
            }
          ]
        },
        {
          "name": "author",
          "displayName": "Author",
          "values": [
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "",
              "description": "The name of the author of the commit"
            },
            {
              "displayName": "Email",
              "name": "email",
              "type": "string",
              "placeholder": "name@email.com",
              "default": "",
              "description": "The email of the author of the commit"
            }
          ]
        },
        {
          "name": "encoding",
          "displayName": "Encoding",
          "values": [
            {
              "displayName": "Encoding",
              "name": "encoding",
              "type": "string",
              "default": "text",
              "description": "Change encoding to base64. Default is text."
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "create",
            "delete",
            "edit"
          ],
          "resource": [
            "file"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new issue",
      "resource": "issue"
    },
    {
      "operation": "createComment",
      "name": "Create Comment",
      "description": "Create a new comment on an issue",
      "resource": "issue"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit an issue",
      "resource": "issue"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single issue",
      "resource": "issue"
    },
    {
      "operation": "lock",
      "name": "Lock",
      "description": "Lock an issue",
      "resource": "issue"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single repository",
      "resource": "repository"
    },
    {
      "operation": "getIssues",
      "name": "Get Issues",
      "description": "Returns issues of a repository",
      "resource": "repository"
    },
    {
      "operation": "getRepositories",
      "name": "Get Repositories",
      "description": "Returns the repositories of a user",
      "resource": "user"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new release",
      "resource": "release"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a release",
      "resource": "release"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a release",
      "resource": "release"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many releases",
      "resource": "release"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a release",
      "resource": "release"
    },
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a new file in repository",
      "resource": "file"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a file in repository",
      "resource": "file"
    },
    {
      "operation": "edit",
      "name": "Edit",
      "description": "Edit a file in repository",
      "resource": "file"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get the data of a single file",
      "resource": "file"
    },
    {
      "operation": "list",
      "name": "List",
      "description": "List contents of a folder",
      "resource": "file"
    }
  ]

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


node_type: nodes-base.gitlabTrigger
package_name: n8n-nodes-base
display_name: GitLab Trigger
description: Starts the workflow when GitLab events occur
category: trigger
development_style: programmatic
version: 1
operations: []
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: GitLab Trigger node documentation
  description: Learn how to use the GitLab Trigger node in n8n. Follow technical documentation to integrate GitLab Trigger node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # GitLab Trigger node

  [GitLab](https://gitlab.com/){:target=_blank .external-link} is a web-based DevOps lifecycle tool that provides a Git-repository manager providing wiki, issue-tracking, and continuous integration/continuous installation pipeline features.

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

  ///  note  | Examples and templates
  For usage examples and templates to help you get started, refer to n8n's [GitLab Trigger integrations](https://n8n.io/integrations/gitlab-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": "Repository Owner",
      "name": "owner",
      "type": "string",
      "default": "",
      "description": "Owner of the repository",
      "required": true
    },
    {
      "displayName": "Repository Name",
      "name": "repository",
      "type": "string",
      "default": "",
      "description": "The name of the repository",
      "required": true
    },
    {
      "displayName": "Events",
      "name": "events",
      "type": "multiOptions",
      "default": [],
      "description": "The events to listen to",
      "options": [
        {
          "name": "Comment",
          "value": "note",
          "description": "Triggered when a new comment is made on commits, merge requests, issues, and code snippets"
        },
        {
          "name": "Confidential Issues",
          "value": "confidential_issues",
          "description": "Triggered on confidential issues' events"
        },
        {
          "name": "Confidential Comments",
          "value": "confidential_note",
          "description": "Triggered when a confidential comment is made"
        },
        {
          "name": "Deployments",
          "value": "deployment",
          "description": "Triggered when a deployment starts/succeeds/fails/is cancelled"
        },
        {
          "name": "Issue",
          "value": "issues",
          "description": "Triggered when a new issue is created or an existing issue was updated/closed/reopened"
        },
        {
          "name": "Job",
          "value": "job",
          "description": "Triggered on status change of a job"
        },
        {
          "name": "Merge Request",
          "value": "merge_requests",
          "description": "Triggered when a new merge request is created, an existing merge request was updated/merged/closed or a commit is added in the source branch"
        },
        {
          "name": "Pipeline",
          "value": "pipeline",
          "description": "Triggered on status change of Pipeline"
        },
        {
          "name": "Push",
          "value": "push",
          "description": "Triggered when you push to the repository except when pushing tags"
        },
        {
          "name": "Release",
          "value": "releases",
          "description": "Release events are triggered when a release is created or updated"
        },
        {
          "name": "Tag",
          "value": "tag_push",
          "description": "Triggered when you create (or delete) tags to the repository"
        },
        {
          "name": "Wiki Page",
          "value": "wiki_page",
          "description": "Triggered when a wiki page is created, updated or deleted"
        },
        {
          "name": "*",
          "value": "*",
          "description": "Any time any event is triggered (Wildcard Event)"
        }
      ],
      "required": true
    }
  ]

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


node_type: nodes-base.gongTool
package_name: n8n-nodes-base
display_name: Gong Tool
description: Interact with Gong API (AI Tool variant for use with AI Agents)
category: transform
development_style: programmatic
version: 1
outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-07-16 12:10:22
tool_variant_of: nodes-base.gong
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Gong node documentation
  description: Learn how to use the Gong node in n8n. Follow technical documentation to integrate Gong node into your workflows.
  contentType: [integration, reference]
  ---

  # Gong node

  Use the Gong node to automate work in Gong and integrate Gong with other applications. n8n has built-in support for a wide range of Gong features, which includes getting one or more calls and users.

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

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


  ## Operations

  <!-- vale off -->
  * Call
  	* Get
  	* Get Many
  * User
  	* Get
  	* Get Many
  <!-- vale on -->

  ## Templates and examples

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

  ## Related resources

  Refer to [Gong's documentation](https://gong.app.gong.io/settings/api/documentation){:target=_blank .external-link} for more information about the service.

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

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with Gong"
    },
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "call",
      "options": [
        {
          "name": "Call",
          "value": "call"
        },
        {
          "name": "User",
          "value": "user"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific call",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/calls/extensive",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get call"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of calls",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/calls/extensive",
              "body": {
                "filter": {}
              },
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get many calls"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Call to Get",
      "name": "call",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getCalls",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 7782342274025937895",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[0-9]{1,20}",
                "errorMessage": "Not a valid Gong Call ID"
              }
            }
          ]
        },
        {
          "displayName": "By URL",
          "name": "url",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/[a-zA-Z0-9-]+\\.app\\.gong\\.io\\/call\\?id=([0-9]{1,20})"
          },
          "placeholder": "e.g. https://subdomain.app.gong.io/call?id=7782342274025937895",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/[a-zA-Z0-9-]+\\.app\\.gong\\.io\\/call\\?id=([0-9]{1,20})",
                "errorMessage": "Not a valid Gong URL"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Call Data to Include",
          "name": "properties",
          "type": "multiOptions",
          "default": [],
          "description": "The Call properties to include in the returned results. Choose from a list, or specify IDs using an <a href=\"https://docs.n8n.io/code-examples/expressions/\">expression</a>.",
          "options": [
            {
              "name": "Action Items",
              "value": "pointsOfInterest",
              "description": "Call points of interest"
            },
            {
              "name": "Audio and Video URLs",
              "value": "media",
              "description": "Audio and video URL of the call. The URLs will be available for 8 hours."
            },
            {
              "name": "Brief",
              "value": "brief",
              "description": "Spotlight call brief",
              "routing": {
                "send": {
                  "type": "body",
                  "property": "contentSelector.exposedFields.content.brief",
                  "propertyInDotNotation": true,
                  "value": "={{ $value }}"
                }
              }
            },
            {
              "name": "Comments",
              "value": "publicComments",
              "description": "Public comments made for this call"
            },
            {
              "name": "Highlights",
              "value": "highlights",
              "description": "Call highlights"
            },
            {
              "name": "Keypoints",
              "value": "keyPoints",
              "description": "Key points of the call"
            },
            {
              "name": "Outcome",
              "value": "callOutcome",
              "description": "Outcome of the call"
            },
            {
              "name": "Outline",
              "value": "outline",
              "description": "Call outline"
            },
            {
              "name": "Participants",
              "value": "parties",
              "description": "Information about the participants of the call"
            },
            {
              "name": "Structure",
              "value": "structure",
              "description": "Call agenda"
            },
            {
              "name": "Topics",
              "value": "topics",
              "description": "Duration of call topics"
            },
            {
              "name": "Trackers",
              "value": "trackers",
              "description": "Smart tracker and keyword tracker information for the call"
            },
            {
              "name": "Transcript",
              "value": "transcript",
              "description": "Information about the participants"
            }
          ],
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "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": [
            "call"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "After",
          "name": "fromDateTime",
          "default": "",
          "description": "Returns calls that started on or after the specified date and time. If not provided, list starts with earliest call. For web-conference calls recorded by Gong, the date denotes its scheduled time, otherwise, it denotes its actual start time.",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.fromDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Before",
          "name": "toDateTime",
          "default": "",
          "description": "Returns calls that started up to but excluding specified date and time. If not provided, list ends with most recent call. For web-conference calls recorded by Gong, the date denotes its scheduled time, otherwise, it denotes its actual start time.",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.toDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Workspace ID",
          "name": "workspaceId",
          "default": "",
          "description": "Return only the calls belonging to this workspace",
          "placeholder": "e.g. 623457276584334",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.workspaceId",
              "propertyInDotNotation": true,
              "value": "={{ $value }}"
            }
          },
          "type": "string",
          "validateType": "number"
        },
        {
          "displayName": "Call IDs",
          "name": "callIds",
          "default": "",
          "description": "List of calls IDs to be filtered",
          "hint": "Comma separated list of IDs, array of strings can be set in expression",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "placeholder": "e.g. 7782342274025937895",
          "type": "string"
        },
        {
          "displayName": "Organizer",
          "name": "primaryUserIds",
          "default": {
            "mode": "list",
            "value": ""
          },
          "description": "Return only the calls hosted by the specified user",
          "modes": [
            {
              "displayName": "From List",
              "name": "list",
              "type": "list",
              "typeOptions": {
                "searchListMethod": "getUsers",
                "searchable": true
              }
            },
            {
              "displayName": "By ID",
              "name": "id",
              "placeholder": "e.g. 7782342274025937895",
              "type": "string",
              "validation": [
                {
                  "type": "regex",
                  "properties": {
                    "regex": "[0-9]{1,20}",
                    "errorMessage": "Not a valid Gong User ID"
                  }
                }
              ]
            }
          ],
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.primaryUserIds",
              "propertyInDotNotation": true,
              "value": "={{ [$value] }}"
            }
          },
          "type": "resourceLocator"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Call Data to Include",
          "name": "properties",
          "type": "multiOptions",
          "default": [],
          "description": "The Call properties to include in the returned results. Choose from a list, or specify IDs using an <a href=\"https://docs.n8n.io/code-examples/expressions/\">expression</a>.",
          "options": [
            {
              "name": "Participants",
              "value": "parties",
              "description": "Information about the participants of the call"
            },
            {
              "name": "Topics",
              "value": "topics",
              "description": "Information about the topics of the call"
            }
          ],
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific user",
          "action": "Get user",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/users/extensive",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          }
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of users",
          "action": "Get many users",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/users/extensive",
              "body": {
                "filter": {}
              },
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "User to Get",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 7782342274025937895",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[0-9]{1,20}",
                "errorMessage": "Not a valid Gong User ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Created After",
          "name": "createdFromDateTime",
          "default": "",
          "description": "An optional user creation time lower limit, if supplied the API will return only the users created at or after this time",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.createdFromDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Created Before",
          "name": "createdToDateTime",
          "default": "",
          "description": "An optional user creation time upper limit, if supplied the API will return only the users created before this time",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.createdToDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "User IDs",
          "name": "userIds",
          "default": "",
          "description": "Set of Gong's unique numeric identifiers for the users (up to 20 digits)",
          "hint": "Comma separated list of IDs, array of strings can be set in expression",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "placeholder": "e.g. 7782342274025937895",
          "type": "string"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve data for a specific call",
      "resource": "call"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of calls",
      "resource": "call"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve data for a specific user",
      "resource": "user"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of users",
      "resource": "user"
    }
  ]

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


node_type: nodes-base.gong
package_name: n8n-nodes-base
display_name: Gong
description: Interact with Gong API
category: transform
development_style: programmatic
version: 1
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Gong node documentation
  description: Learn how to use the Gong node in n8n. Follow technical documentation to integrate Gong node into your workflows.
  contentType: [integration, reference]
  ---

  # Gong node

  Use the Gong node to automate work in Gong and integrate Gong with other applications. n8n has built-in support for a wide range of Gong features, which includes getting one or more calls and users.

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

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


  ## Operations

  <!-- vale off -->
  * Call
  	* Get
  	* Get Many
  * User
  	* Get
  	* Get Many
  <!-- vale on -->

  ## Templates and examples

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

  ## Related resources

  Refer to [Gong's documentation](https://gong.app.gong.io/settings/api/documentation){:target=_blank .external-link} for more information about the service.

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

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "accessToken",
      "options": [
        {
          "name": "Access Token",
          "value": "accessToken"
        },
        {
          "name": "OAuth2",
          "value": "oAuth2"
        }
      ]
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "call",
      "options": [
        {
          "name": "Call",
          "value": "call"
        },
        {
          "name": "User",
          "value": "user"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific call",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/calls/extensive",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get call"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of calls",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/calls/extensive",
              "body": {
                "filter": {}
              },
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get many calls"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Call to Get",
      "name": "call",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getCalls",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 7782342274025937895",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[0-9]{1,20}",
                "errorMessage": "Not a valid Gong Call ID"
              }
            }
          ]
        },
        {
          "displayName": "By URL",
          "name": "url",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/[a-zA-Z0-9-]+\\.app\\.gong\\.io\\/call\\?id=([0-9]{1,20})"
          },
          "placeholder": "e.g. https://subdomain.app.gong.io/call?id=7782342274025937895",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/[a-zA-Z0-9-]+\\.app\\.gong\\.io\\/call\\?id=([0-9]{1,20})",
                "errorMessage": "Not a valid Gong URL"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Call Data to Include",
          "name": "properties",
          "type": "multiOptions",
          "default": [],
          "description": "The Call properties to include in the returned results. Choose from a list, or specify IDs using an <a href=\"https://docs.n8n.io/code-examples/expressions/\">expression</a>.",
          "options": [
            {
              "name": "Action Items",
              "value": "pointsOfInterest",
              "description": "Call points of interest"
            },
            {
              "name": "Audio and Video URLs",
              "value": "media",
              "description": "Audio and video URL of the call. The URLs will be available for 8 hours."
            },
            {
              "name": "Brief",
              "value": "brief",
              "description": "Spotlight call brief",
              "routing": {
                "send": {
                  "type": "body",
                  "property": "contentSelector.exposedFields.content.brief",
                  "propertyInDotNotation": true,
                  "value": "={{ $value }}"
                }
              }
            },
            {
              "name": "Comments",
              "value": "publicComments",
              "description": "Public comments made for this call"
            },
            {
              "name": "Highlights",
              "value": "highlights",
              "description": "Call highlights"
            },
            {
              "name": "Keypoints",
              "value": "keyPoints",
              "description": "Key points of the call"
            },
            {
              "name": "Outcome",
              "value": "callOutcome",
              "description": "Outcome of the call"
            },
            {
              "name": "Outline",
              "value": "outline",
              "description": "Call outline"
            },
            {
              "name": "Participants",
              "value": "parties",
              "description": "Information about the participants of the call"
            },
            {
              "name": "Structure",
              "value": "structure",
              "description": "Call agenda"
            },
            {
              "name": "Topics",
              "value": "topics",
              "description": "Duration of call topics"
            },
            {
              "name": "Trackers",
              "value": "trackers",
              "description": "Smart tracker and keyword tracker information for the call"
            },
            {
              "name": "Transcript",
              "value": "transcript",
              "description": "Information about the participants"
            }
          ],
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "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": [
            "call"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "After",
          "name": "fromDateTime",
          "default": "",
          "description": "Returns calls that started on or after the specified date and time. If not provided, list starts with earliest call. For web-conference calls recorded by Gong, the date denotes its scheduled time, otherwise, it denotes its actual start time.",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.fromDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Before",
          "name": "toDateTime",
          "default": "",
          "description": "Returns calls that started up to but excluding specified date and time. If not provided, list ends with most recent call. For web-conference calls recorded by Gong, the date denotes its scheduled time, otherwise, it denotes its actual start time.",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.toDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Workspace ID",
          "name": "workspaceId",
          "default": "",
          "description": "Return only the calls belonging to this workspace",
          "placeholder": "e.g. 623457276584334",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.workspaceId",
              "propertyInDotNotation": true,
              "value": "={{ $value }}"
            }
          },
          "type": "string",
          "validateType": "number"
        },
        {
          "displayName": "Call IDs",
          "name": "callIds",
          "default": "",
          "description": "List of calls IDs to be filtered",
          "hint": "Comma separated list of IDs, array of strings can be set in expression",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "placeholder": "e.g. 7782342274025937895",
          "type": "string"
        },
        {
          "displayName": "Organizer",
          "name": "primaryUserIds",
          "default": {
            "mode": "list",
            "value": ""
          },
          "description": "Return only the calls hosted by the specified user",
          "modes": [
            {
              "displayName": "From List",
              "name": "list",
              "type": "list",
              "typeOptions": {
                "searchListMethod": "getUsers",
                "searchable": true
              }
            },
            {
              "displayName": "By ID",
              "name": "id",
              "placeholder": "e.g. 7782342274025937895",
              "type": "string",
              "validation": [
                {
                  "type": "regex",
                  "properties": {
                    "regex": "[0-9]{1,20}",
                    "errorMessage": "Not a valid Gong User ID"
                  }
                }
              ]
            }
          ],
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.primaryUserIds",
              "propertyInDotNotation": true,
              "value": "={{ [$value] }}"
            }
          },
          "type": "resourceLocator"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Call Data to Include",
          "name": "properties",
          "type": "multiOptions",
          "default": [],
          "description": "The Call properties to include in the returned results. Choose from a list, or specify IDs using an <a href=\"https://docs.n8n.io/code-examples/expressions/\">expression</a>.",
          "options": [
            {
              "name": "Participants",
              "value": "parties",
              "description": "Information about the participants of the call"
            },
            {
              "name": "Topics",
              "value": "topics",
              "description": "Information about the topics of the call"
            }
          ],
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "call"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific user",
          "action": "Get user",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/users/extensive",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          }
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of users",
          "action": "Get many users",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/v2/users/extensive",
              "body": {
                "filter": {}
              },
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "User to Get",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 7782342274025937895",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[0-9]{1,20}",
                "errorMessage": "Not a valid Gong User ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Created After",
          "name": "createdFromDateTime",
          "default": "",
          "description": "An optional user creation time lower limit, if supplied the API will return only the users created at or after this time",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.createdFromDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Created Before",
          "name": "createdToDateTime",
          "default": "",
          "description": "An optional user creation time upper limit, if supplied the API will return only the users created before this time",
          "placeholder": "e.g. 2018-02-18T02:30:00-07:00 or 2018-02-18T08:00:00Z",
          "routing": {
            "send": {
              "type": "body",
              "property": "filter.createdToDateTime",
              "propertyInDotNotation": true,
              "value": "={{ new Date($value).toISOString() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "User IDs",
          "name": "userIds",
          "default": "",
          "description": "Set of Gong's unique numeric identifiers for the users (up to 20 digits)",
          "hint": "Comma separated list of IDs, array of strings can be set in expression",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "placeholder": "e.g. 7782342274025937895",
          "type": "string"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve data for a specific call",
      "resource": "call"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of calls",
      "resource": "call"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve data for a specific user",
      "resource": "user"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of users",
      "resource": "user"
    }
  ]

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


node_type: nodes-base.googleAdsTool
package_name: n8n-nodes-base
display_name: Google Ads Tool
description: Use the Google Ads API (AI Tool variant for use with AI Agents)
category: transform
development_style: programmatic
version: 1
outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-07-16 12:10:22
tool_variant_of: nodes-base.googleAds
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Google Ads node documentation
  description: Learn how to use the Google Ads node in n8n. Follow technical documentation to integrate Google Ads node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Google Ads node

  Use the Google Ads node to automate work in Google Ads, and integrate Google Ads with other applications. n8n has built-in support for a wide range of Google Ads features, including getting campaigns. 

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

  /// note | Credentials
  Refer to [Google Ads credentials](/integrations/builtin/credentials/google/index.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * Campaign
    * Get all campaigns
    * Get a campaign

  ## Templates and examples

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

  ## Related resources

  Refer to [Google Ads' documentation](https://developers.google.com/google-ads/api/docs/start){:target=_blank .external-link} for more information about the service.

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

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with Google Ads"
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "campaign",
      "options": [
        {
          "name": "Campaign",
          "value": "campaign"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many campaigns linked to the specified account",
          "routing": {
            "request": {
              "method": "POST",
              "url": "={{\"/v21/customers/\" + $parameter[\"clientCustomerId\"].toString().replace(/-/g, \"\")  + \"/googleAds:search\"}}",
              "body": {
                "query": "={{ \"select campaign.id, campaign.name, campaign_budget.amount_micros, campaign_budget.period,campaign.status,campaign.optimization_score,campaign.advertising_channel_type,campaign.advertising_channel_sub_type,metrics.impressions,metrics.interactions,metrics.interaction_rate,metrics.average_cost,metrics.cost_micros,metrics.conversions,metrics.cost_per_conversion,metrics.conversions_from_interactions_rate,metrics.video_views,metrics.average_cpm,metrics.ctr from campaign where campaign.id > 0 \" + ([\"allTime\", undefined, \"\"].includes($parameter.additionalOptions?.dateRange) ? \"\" : \" and segments.date DURING \" + $parameter.additionalOptions.dateRange) + \" \" + ([\"all\", undefined, \"\"].includes($parameter.additionalOptions?.campaignStatus) ? \"\" : \" and campaign.status = '\" + $parameter.additionalOptions.campaignStatus + \"'\") + \"\" }}"
              },
              "headers": {
                "login-customer-id": "={{$parameter[\"managerCustomerId\"].toString().replace(/-/g, \"\")}}"
              }
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get many campaigns"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a specific campaign",
          "routing": {
            "request": {
              "method": "POST",
              "url": "={{\"/v21/customers/\" + $parameter[\"clientCustomerId\"].toString().replace(/-/g, \"\") + \"/googleAds:search\"}}",
              "returnFullResponse": true,
              "body": {
                "query": "={{ \"select campaign.id, campaign.name, campaign_budget.amount_micros, campaign_budget.period,campaign.status,campaign.optimization_score,campaign.advertising_channel_type,campaign.advertising_channel_sub_type,metrics.impressions,metrics.interactions,metrics.interaction_rate,metrics.average_cost,metrics.cost_micros,metrics.conversions,metrics.cost_per_conversion,metrics.conversions_from_interactions_rate,metrics.video_views,metrics.average_cpm,metrics.ctr from campaign where campaign.id = \" + $parameter[\"campaignId\"].toString().replace(/-/g, \"\")}}"
              },
              "headers": {
                "login-customer-id": "={{$parameter[\"managerCustomerId\"].toString().replace(/-/g, \"\")}}"
              }
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get a campaign"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Divide field names expressed with <i>micros</i> by 1,000,000 to get the actual value",
      "name": "campaigsNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Manager Customer ID",
      "name": "managerCustomerId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Client Customer ID",
      "name": "clientCustomerId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Campaign ID",
      "name": "campaignId",
      "type": "string",
      "default": "",
      "description": "ID of the campaign",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Additional Options",
      "name": "additionalOptions",
      "type": "collection",
      "default": {},
      "description": "Additional options for fetching campaigns",
      "options": [
        {
          "displayName": "Date Range",
          "name": "dateRange",
          "description": "Filters statistics by period",
          "type": "options",
          "options": [
            {
              "name": "All Time",
              "value": "allTime",
              "description": "Fetch statistics for all period"
            },
            {
              "name": "Today",
              "value": "TODAY",
              "description": "Today only"
            },
            {
              "name": "Yesterday",
              "value": "YESTERDAY",
              "description": "Yesterday only"
            },
            {
              "name": "Last 7 Days",
              "value": "LAST_7_DAYS",
              "description": "Last 7 days, not including today"
            },
            {
              "name": "Last Business Week",
              "value": "LAST_BUSINESS_WEEK",
              "description": "The 5 day business week, Monday through Friday, of the previous business week"
            },
            {
              "name": "This Month",
              "value": "THIS_MONTH",
              "description": "All days in the current month"
            },
            {
              "name": "Last Month",
              "value": "LAST_MONTH",
              "description": "All days in the previous month"
            },
            {
              "name": "Last 14 Days",
              "value": "LAST_14_DAYS",
              "description": "The last 14 days not including today"
            },
            {
              "name": "Last 30 Days",
              "value": "LAST_30_DAYS",
              "description": "The last 30 days not including today"
            }
          ],
          "default": "allTime"
        },
        {
          "displayName": "Show Campaigns by Status",
          "name": "campaignStatus",
          "description": "Filters campaigns by status",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Fetch all campaigns regardless of status"
            },
            {
              "name": "Enabled",
              "value": "ENABLED",
              "description": "Filter only active campaigns"
            },
            {
              "name": "Paused",
              "value": "PAUSED",
              "description": "Filter only paused campaigns"
            },
            {
              "name": "Removed",
              "value": "REMOVED",
              "description": "Filter only removed campaigns"
            }
          ],
          "default": "all"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many campaigns linked to the specified account",
      "resource": "campaign"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a specific campaign",
      "resource": "campaign"
    }
  ]

credentials_required:
  [
    {
      "name": "googleAdsOAuth2Api",
      "required": true,
      "testedBy": {
        "request": {
          "method": "GET",
          "url": "/v21/customers:listAccessibleCustomers"
        }
      }
    }
  ]


node_type: nodes-base.googleAds
package_name: n8n-nodes-base
display_name: Google Ads
description: Use the Google Ads API
category: transform
development_style: programmatic
version: 1
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Google Ads node documentation
  description: Learn how to use the Google Ads node in n8n. Follow technical documentation to integrate Google Ads node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Google Ads node

  Use the Google Ads node to automate work in Google Ads, and integrate Google Ads with other applications. n8n has built-in support for a wide range of Google Ads features, including getting campaigns. 

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

  /// note | Credentials
  Refer to [Google Ads credentials](/integrations/builtin/credentials/google/index.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * Campaign
    * Get all campaigns
    * Get a campaign

  ## Templates and examples

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

  ## Related resources

  Refer to [Google Ads' documentation](https://developers.google.com/google-ads/api/docs/start){:target=_blank .external-link} for more information about the service.

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "campaign",
      "options": [
        {
          "name": "Campaign",
          "value": "campaign"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many campaigns linked to the specified account",
          "routing": {
            "request": {
              "method": "POST",
              "url": "={{\"/v21/customers/\" + $parameter[\"clientCustomerId\"].toString().replace(/-/g, \"\")  + \"/googleAds:search\"}}",
              "body": {
                "query": "={{ \"select campaign.id, campaign.name, campaign_budget.amount_micros, campaign_budget.period,campaign.status,campaign.optimization_score,campaign.advertising_channel_type,campaign.advertising_channel_sub_type,metrics.impressions,metrics.interactions,metrics.interaction_rate,metrics.average_cost,metrics.cost_micros,metrics.conversions,metrics.cost_per_conversion,metrics.conversions_from_interactions_rate,metrics.video_views,metrics.average_cpm,metrics.ctr from campaign where campaign.id > 0 \" + ([\"allTime\", undefined, \"\"].includes($parameter.additionalOptions?.dateRange) ? \"\" : \" and segments.date DURING \" + $parameter.additionalOptions.dateRange) + \" \" + ([\"all\", undefined, \"\"].includes($parameter.additionalOptions?.campaignStatus) ? \"\" : \" and campaign.status = '\" + $parameter.additionalOptions.campaignStatus + \"'\") + \"\" }}"
              },
              "headers": {
                "login-customer-id": "={{$parameter[\"managerCustomerId\"].toString().replace(/-/g, \"\")}}"
              }
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get many campaigns"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Get a specific campaign",
          "routing": {
            "request": {
              "method": "POST",
              "url": "={{\"/v21/customers/\" + $parameter[\"clientCustomerId\"].toString().replace(/-/g, \"\") + \"/googleAds:search\"}}",
              "returnFullResponse": true,
              "body": {
                "query": "={{ \"select campaign.id, campaign.name, campaign_budget.amount_micros, campaign_budget.period,campaign.status,campaign.optimization_score,campaign.advertising_channel_type,campaign.advertising_channel_sub_type,metrics.impressions,metrics.interactions,metrics.interaction_rate,metrics.average_cost,metrics.cost_micros,metrics.conversions,metrics.cost_per_conversion,metrics.conversions_from_interactions_rate,metrics.video_views,metrics.average_cpm,metrics.ctr from campaign where campaign.id = \" + $parameter[\"campaignId\"].toString().replace(/-/g, \"\")}}"
              },
              "headers": {
                "login-customer-id": "={{$parameter[\"managerCustomerId\"].toString().replace(/-/g, \"\")}}"
              }
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get a campaign"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Divide field names expressed with <i>micros</i> by 1,000,000 to get the actual value",
      "name": "campaigsNotice",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Manager Customer ID",
      "name": "managerCustomerId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Client Customer ID",
      "name": "clientCustomerId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Campaign ID",
      "name": "campaignId",
      "type": "string",
      "default": "",
      "description": "ID of the campaign",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "campaign"
          ]
        }
      }
    },
    {
      "displayName": "Additional Options",
      "name": "additionalOptions",
      "type": "collection",
      "default": {},
      "description": "Additional options for fetching campaigns",
      "options": [
        {
          "displayName": "Date Range",
          "name": "dateRange",
          "description": "Filters statistics by period",
          "type": "options",
          "options": [
            {
              "name": "All Time",
              "value": "allTime",
              "description": "Fetch statistics for all period"
            },
            {
              "name": "Today",
              "value": "TODAY",
              "description": "Today only"
            },
            {
              "name": "Yesterday",
              "value": "YESTERDAY",
              "description": "Yesterday only"
            },
            {
              "name": "Last 7 Days",
              "value": "LAST_7_DAYS",
              "description": "Last 7 days, not including today"
            },
            {
              "name": "Last Business Week",
              "value": "LAST_BUSINESS_WEEK",
              "description": "The 5 day business week, Monday through Friday, of the previous business week"
            },
            {
              "name": "This Month",
              "value": "THIS_MONTH",
              "description": "All days in the current month"
            },
            {
              "name": "Last Month",
              "value": "LAST_MONTH",
              "description": "All days in the previous month"
            },
            {
              "name": "Last 14 Days",
              "value": "LAST_14_DAYS",
              "description": "The last 14 days not including today"
            },
            {
              "name": "Last 30 Days",
              "value": "LAST_30_DAYS",
              "description": "The last 30 days not including today"
            }
          ],
          "default": "allTime"
        },
        {
          "displayName": "Show Campaigns by Status",
          "name": "campaignStatus",
          "description": "Filters campaigns by status",
          "type": "options",
          "options": [
            {
              "name": "All",
              "value": "all",
              "description": "Fetch all campaigns regardless of status"
            },
            {
              "name": "Enabled",
              "value": "ENABLED",
              "description": "Filter only active campaigns"
            },
            {
              "name": "Paused",
              "value": "PAUSED",
              "description": "Filter only paused campaigns"
            },
            {
              "name": "Removed",
              "value": "REMOVED",
              "description": "Filter only removed campaigns"
            }
          ],
          "default": "all"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "campaign"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many campaigns linked to the specified account",
      "resource": "campaign"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a specific campaign",
      "resource": "campaign"
    }
  ]

credentials_required:
  [
    {
      "name": "googleAdsOAuth2Api",
      "required": true,
      "testedBy": {
        "request": {
          "method": "GET",
          "url": "/v21/customers:listAccessibleCustomers"
        }
      }
    }
  ]


node_type: nodes-base.googleAnalytics
package_name: n8n-nodes-base
display_name: Google Analytics
description: Use the Google Analytics API
category: transform
development_style: programmatic
version: 2
credentials_required:
  [
  {
  "name": "googleAnalyticsOAuth2",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Google Analytics node documentation
  description: Learn how to use the Google Analytics node in n8n. Follow technical documentation to integrate Google Analytics node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Google Analytics node

  Use the Google Analytics node to automate work in Google Analytics, and integrate Google Analytics with other applications. n8n has built-in support for a wide range of Google Analytics features, including returning reports and user activities.


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

  /// note | Credentials
  Refer to [Google Analytics credentials](/integrations/builtin/credentials/google/index.md) for guidance on setting up authentication. 
  ///

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

  ## Operations

  * Report
      * Get
  * User Activity
      * Search

  ## Templates and examples

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

  ## Related resources

  Refer to [Google Analytics' documentation](https://developers.google.com/analytics){:target=_blank .external-link} for more information about the service.

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

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "report",
      "options": [
        {
          "name": "Report",
          "value": "report"
        },
        {
          "name": "User Activity",
          "value": "userActivity"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Return the analytics data",
          "action": "Get a report"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Property Type",
      "name": "propertyType",
      "type": "options",
      "default": "ga4",
      "description": "Google Analytics 4 is the latest version. Universal Analytics is an older version that is not fully functional after the end of June 2023.",
      "options": [
        {
          "name": "Google Analytics 4",
          "value": "ga4"
        },
        {
          "name": "Universal Analytics",
          "value": "universal"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Property",
      "name": "propertyId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The Property of Google Analytics",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "placeholder": "Select a property...",
          "typeOptions": {
            "searchListMethod": "searchProperties",
            "searchFilterRequired": false,
            "searchable": false
          }
        },
        {
          "displayName": "By URL",
          "name": "url",
          "type": "string",
          "placeholder": "https://analytics.google.com/analytics/...",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": ".*analytics\\.google\\.com\\/analytics.*\\/p([0-9]{1,})(?:\\/.*|)*",
                "errorMessage": "Not a valid Google Analytics URL"
              }
            }
          ],
          "extractValue": {
            "type": "regex",
            "regex": ".*analytics\\.google\\.com\\/analytics.*\\/p([0-9]{1,})(?:\\/.*|)"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "placeholder": "123456",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[0-9]{1,}",
                "errorMessage": "Not a valid Google Analytics Property ID"
              }
            }
          ],
          "url": "=https://analytics.google.com/analytics/web/#/p{{$value}}/"
        }
      ]
    },
    {
      "displayName": "Date Range",
      "name": "dateRange",
      "type": "options",
      "default": "last7days",
      "options": [
        {
          "name": "Last 7 Days",
          "value": "last7days"
        },
        {
          "name": "Last 30 Days",
          "value": "last30days"
        },
        {
          "name": "Today",
          "value": "today"
        },
        {
          "name": "Yesterday",
          "value": "yesterday"
        },
        {
          "name": "Last Complete Calendar Week",
          "value": "lastCalendarWeek"
        },
        {
          "name": "Last Complete Calendar Month",
          "value": "lastCalendarMonth"
        },
        {
          "name": "Custom",
          "value": "custom"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      }
    },
    {
      "displayName": "Start",
      "name": "startDate",
      "type": "dateTime",
      "default": "2026-07-08T00:00:00.000+02:00",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "dateRange": [
            "custom"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      }
    },
    {
      "displayName": "End",
      "name": "endDate",
      "type": "dateTime",
      "default": "2026-07-15T00:00:00.000+02:00",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "dateRange": [
            "custom"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      }
    },
    {
      "displayName": "Metrics",
      "name": "metricsGA4",
      "type": "fixedCollection",
      "default": {
        "metricValues": [
          {
            "listName": "totalUsers"
          }
        ]
      },
      "description": "The quantitative measurements of a report. For example, the metric eventCount is the total number of events. Requests are allowed up to 10 metrics.",
      "options": [
        {
          "displayName": "Values",
          "name": "metricValues",
          "values": [
            {
              "displayName": "Metric",
              "name": "listName",
              "type": "options",
              "default": "totalUsers",
              "options": [
                {
                  "name": "1 Day Active Users",
                  "value": "active1DayUsers"
                },
                {
                  "name": "28 Day Active Users",
                  "value": "active28DayUsers"
                },
                {
                  "name": "7 Day Active Users",
                  "value": "active7DayUsers"
                },
                {
                  "name": "Checkouts",
                  "value": "checkouts"
                },
                {
                  "name": "Events",
                  "value": "eventCount"
                },
                {
                  "name": "Page Views",
                  "value": "screenPageViews"
                },
                {
                  "name": "Session Duration",
                  "value": "userEngagementDuration"
                },
                {
                  "name": "Sessions",
                  "value": "sessions"
                },
                {
                  "name": "Sessions per User",
                  "value": "sessionsPerUser"
                },
                {
                  "name": "Total Users",
                  "value": "totalUsers"
                },
                {
                  "name": "Other metrics…",
                  "value": "other"
                },
                {
                  "name": "Custom metric…",
                  "value": "custom"
                }
              ]
            },
            {
              "displayName": "Name or ID",
              "name": "name",
              "type": "options",
              "typeOptions": {
                "loadOptionsMethod": "getMetricsGA4",
                "loadOptionsDependsOn": [
                  "propertyId.value"
                ]
              },
              "default": "totalUsers",
              "hint": "If expression is specified, name can be any string that you would like",
              "description": "The name of the metric. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
              "displayOptions": {
                "show": {
                  "listName": [
                    "other"
                  ]
                }
              }
            },
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "custom_metric",
              "displayOptions": {
                "show": {
                  "listName": [
                    "custom"
                  ]
                }
              }
            },
            {
              "displayName": "Expression",
              "name": "expression",
              "type": "string",
              "default": "",
              "description": "A mathematical expression for derived metrics. For example, the metric Event count per user is eventCount/totalUsers.",
              "placeholder": "e.g. eventCount/totalUsers",
              "displayOptions": {
                "show": {
                  "listName": [
                    "custom"
                  ]
                }
              }
            },
            {
              "displayName": "Invisible",
              "name": "invisible",
              "type": "boolean",
              "default": false,
              "displayOptions": {
                "show": {
                  "listName": [
                    "custom"
                  ]
                }
              },
              "description": "Whether a metric is invisible in the report response. If a metric is invisible, the metric will not produce a column in the response, but can be used in metricFilter, orderBys, or a metric expression."
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Dimensions to split by",
      "name": "dimensionsGA4",
      "type": "fixedCollection",
      "default": {
        "dimensionValues": [
          {
            "listName": "date"
          }
        ]
      },
      "description": "Dimensions are attributes of your data. For example, the dimension city indicates the city from which an event originates. Dimension values in report responses are strings; for example, the city could be \"Paris\" or \"New York\". Requests are allowed up to 9 dimensions.",
      "options": [
        {
          "displayName": "Values",
          "name": "dimensionValues",
          "values": [
            {
              "displayName": "Dimension",
              "name": "listName",
              "type": "options",
              "default": "date",
              "options": [
                {
                  "name": "Browser",
                  "value": "browser"
                },
                {
                  "name": "Campaign",
                  "value": "campaignName"
                },
                {
                  "name": "City",
                  "value": "city"
                },
                {
                  "name": "Country",
                  "value": "country"
                },
                {
                  "name": "Date",
                  "value": "date"
                },
                {
                  "name": "Device Category",
                  "value": "deviceCategory"
                },
                {
                  "name": "Item Name",
                  "value": "itemName"
                },
                {
                  "name": "Language",
                  "value": "language"
                },
                {
                  "name": "Page Location",
                  "value": "pageLocation"
                },
                {
                  "name": "Source / Medium",
                  "value": "sourceMedium"
                },
                {
                  "name": "Other dimensions…",
                  "value": "other"
                }
              ]
            },
            {
              "displayName": "Name or ID",
              "name": "name",
              "type": "options",
              "typeOptions": {
                "loadOptionsMethod": "getDimensionsGA4",
                "loadOptionsDependsOn": [
                  "propertyId.value"
                ]
              },
              "default": "date",
              "description": "The name of the dimension. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
              "displayOptions": {
                "show": {
                  "listName": [
                    "other"
                  ]
                }
              }
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "report"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "report"
          ],
          "propertyType": [
            "ga4"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 1000
      }
    },
    {
      "displayName": "Simplify Output",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "report"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Currency Code",
          "name": "currencyCode",
          "type": "string",
          "default": "",
          "description": "A currency code in ISO4217 format, such as \"AED\", \"USD\", \"JPY\". If the field is empty, the report uses the property's default currency."
        },
        {
          "displayName": "Dimensions Filters",
          "name": "dimensionFiltersUI",
          "type": "fixedCollection",
          "default": {},
          "placeholder": "Add Filter",
          "options": [
            {
              "displayName": "Filter Expressions",
              "name": "filterExpressions",
              "values": [
                {
                  "displayName": "Filter Expression Type",
                  "name": "filterExpressionType",
                  "type": "options",
                  "default": "andGroup",
                  "options": [
                    {
                      "name": "And Group",
                      "value": "andGroup"
                    },
                    {
                      "name": "Or Group",
                      "value": "orGroup"
                    }
                  ]
                },
                {
                  "displayName": "Expression",
                  "name": "expression",
                  "type": "fixedCollection",
                  "typeOptions": {
                    "multipleValues": true
                  },
                  "default": {},
                  "placeholder": "Add Expression",
                  "options": [
                    {
                      "displayName": "String Filter",
                      "name": "stringFilter",
                      "values": [
                        {
                          "displayName": "Dimension",
                          "name": "listName",
                          "type": "options",
                          "default": "date",
                          "options": [
                            {
                              "name": "Browser",
                              "value": "browser"
                            },
                            {
                              "name": "Campaign",
                              "value": "campaignName"
                            },
                            {
                              "name": "City",
                              "value": "city"
                            },
                            {
                              "name": "Country",
                              "value": "country"
                            },
                            {
                              "name": "Date",
                              "value": "date"
                            },
                            {
                              "name": "Device Category",
                              "value": "deviceCategory"
                            },
                            {
                              "name": "Item Name",
                              "value": "itemName"
                            },
                            {
                              "name": "Language",
                              "value": "language"
                            },
                            {
                              "name": "Page Location",
                              "value": "pageLocation"
                            },
                            {
                              "name": "Source / Medium",
                              "value": "sourceMedium"
                            },
                            {
                              "name": "Other dimensions…",
                              "value": "other"
                            }
                          ]
                        },
                        {
                          "displayName": "Name or ID",
                          "name": "name",
                          "type": "options",
                          "typeOptions": {
                            "loadOptionsMethod": "getDimensionsGA4",
                            "loadOptionsDependsOn": [
                              "propertyId.value"
                            ]
                          },
                          "default": "date",
                          "description": "The name of the dimension. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "other"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Value",
                          "name": "value",
                          "type": "string",
                          "default": ""
                        },
                        {
                          "displayName": "Case Sensitive",
                          "name": "caseSensitive",
                          "type": "boolean",
                          "default": true
                        },
                        {
                          "displayName": "Match Type",
                          "name": "matchType",
                          "type": "options",
                          "default": "EXACT",
                          "options": [
                            {
                              "name": "Begins With",
                              "value": "BEGINS_WITH"
                            },
                            {
                              "name": "Contains Value",
                              "value": "CONTAINS"
                            },
                            {
                              "name": "Ends With",
                              "value": "ENDS_WITH"
                            },
                            {
                              "name": "Exact Match",
                              "value": "EXACT"
                            },
                            {
                              "name": "Full Match for the Regular Expression",
                              "value": "FULL_REGEXP"
                            },
                            {
                              "name": "Partial Match for the Regular Expression",
                              "value": "PARTIAL_REGEXP"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "displayName": "In List Filter",
                      "name": "inListFilter",
                      "values": [
                        {
                          "displayName": "Dimension",
                          "name": "listName",
                          "type": "options",
                          "default": "date",
                          "options": [
                            {
                              "name": "Browser",
                              "value": "browser"
                            },
                            {
                              "name": "Campaign",
                              "value": "campaignName"
                            },
                            {
                              "name": "City",
                              "value": "city"
                            },
                            {
                              "name": "Country",
                              "value": "country"
                            },
                            {
                              "name": "Date",
                              "value": "date"
                            },
                            {
                              "name": "Device Category",
                              "value": "deviceCategory"
                            },
                            {
                              "name": "Item Name",
                              "value": "itemName"
                            },
                            {
                              "name": "Language",
                              "value": "language"
                            },
                            {
                              "name": "Page Location",
                              "value": "pageLocation"
                            },
                            {
                              "name": "Source / Medium",
                              "value": "sourceMedium"
                            },
                            {
                              "name": "Other dimensions…",
                              "value": "other"
                            }
                          ]
                        },
                        {
                          "displayName": "Name or ID",
                          "name": "name",
                          "type": "options",
                          "typeOptions": {
                            "loadOptionsMethod": "getDimensionsGA4",
                            "loadOptionsDependsOn": [
                              "propertyId.value"
                            ]
                          },
                          "default": "date",
                          "description": "The name of the dimension. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "other"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Values",
                          "name": "values",
                          "type": "string",
                          "default": "",
                          "hint": "Comma separated list of values. Must be non-empty."
                        },
                        {
                          "displayName": "Case Sensitive",
                          "name": "caseSensitive",
                          "type": "boolean",
                          "default": true
                        }
                      ]
                    },
                    {
                      "displayName": "Numeric Filter",
                      "name": "numericFilter",
                      "values": [
                        {
                          "displayName": "Dimension",
                          "name": "listName",
                          "type": "options",
                          "default": "date",
                          "options": [
                            {
                              "name": "Browser",
                              "value": "browser"
                            },
                            {
                              "name": "Campaign",
                              "value": "campaignName"
                            },
                            {
                              "name": "City",
                              "value": "city"
                            },
                            {
                              "name": "Country",
                              "value": "country"
                            },
                            {
                              "name": "Date",
                              "value": "date"
                            },
                            {
                              "name": "Device Category",
                              "value": "deviceCategory"
                            },
                            {
                              "name": "Item Name",
                              "value": "itemName"
                            },
                            {
                              "name": "Language",
                              "value": "language"
                            },
                            {
                              "name": "Page Location",
                              "value": "pageLocation"
                            },
                            {
                              "name": "Source / Medium",
                              "value": "sourceMedium"
                            },
                            {
                              "name": "Other dimensions…",
                              "value": "other"
                            }
                          ]
                        },
                        {
                          "displayName": "Name or ID",
                          "name": "name",
                          "type": "options",
                          "typeOptions": {
                            "loadOptionsMethod": "getDimensionsGA4",
                            "loadOptionsDependsOn": [
                              "propertyId.value"
                            ]
                          },
                          "default": "date",
                          "description": "The name of the dimension. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "other"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Value Type",
                          "name": "valueType",
                          "type": "options",
                          "default": "doubleValue",
                          "options": [
                            {
                              "name": "Double Value",
                              "value": "doubleValue"
                            },
                            {
                              "name": "Integer Value",
                              "value": "int64Value"
                            }
                          ]
                        },
                        {
                          "displayName": "Value",
                          "name": "value",
                          "type": "string",
                          "default": ""
                        },
                        {
                          "displayName": "Operation",
                          "name": "operation",
                          "type": "options",
                          "noDataExpression": true,
                          "default": "EQUAL",
                          "options": [
                            {
                              "name": "Equal",
                              "value": "EQUAL"
                            },
                            {
                              "name": "Greater Than",
                              "value": "GREATER_THAN"
                            },
                            {
                              "name": "Greater than or Equal",
                              "value": "GREATER_THAN_OR_EQUAL"
                            },
                            {
                              "name": "Less Than",
                              "value": "LESS_THAN"
                            },
                            {
                              "name": "Less than or Equal",
                              "value": "LESS_THAN_OR_EQUAL"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "displayName": "Metric Aggregation",
          "name": "metricAggregations",
          "type": "multiOptions",
          "default": [],
          "options": [
            {
              "name": "MAXIMUM",
              "value": "MAXIMUM"
            },
            {
              "name": "MINIMUM",
              "value": "MINIMUM"
            },
            {
              "name": "TOTAL",
              "value": "TOTAL"
            }
          ],
          "displayOptions": {
            "show": {
              "/simple": [
                false
              ]
            }
          }
        },
        {
          "displayName": "Metrics Filters",
          "name": "metricsFiltersUI",
          "type": "fixedCollection",
          "default": {},
          "placeholder": "Add Filter",
          "options": [
            {
              "displayName": "Filter Expressions",
              "name": "filterExpressions",
              "values": [
                {
                  "displayName": "Filter Expression Type",
                  "name": "filterExpressionType",
                  "type": "options",
                  "default": "andGroup",
                  "options": [
                    {
                      "name": "And Group",
                      "value": "andGroup"
                    },
                    {
                      "name": "Or Group",
                      "value": "orGroup"
                    }
                  ]
                },
                {
                  "displayName": "Expression",
                  "name": "expression",
                  "type": "fixedCollection",
                  "typeOptions": {
                    "multipleValues": true
                  },
                  "default": {},
                  "placeholder": "Add Expression",
                  "options": [
                    {
                      "displayName": "Between Filter",
                      "name": "betweenFilter",
                      "values": [
                        {
                          "displayName": "Metric",
                          "name": "listName",
                          "type": "options",
                          "default": "totalUsers",
                          "options": [
                            {
                              "name": "1 Day Active Users",
                              "value": "active1DayUsers"
                            },
                            {
                              "name": "28 Day Active Users",
                              "value": "active28DayUsers"
                            },
                            {
                              "name": "7 Day Active Users",
                              "value": "active7DayUsers"
                            },
                            {
                              "name": "Checkouts",
                              "value": "checkouts"
                            },
                            {
                              "name": "Events",
                              "value": "eventCount"
                            },
                            {
                              "name": "Page Views",
                              "value": "screenPageViews"
                            },
                            {
                              "name": "Session Duration",
                              "value": "userEngagementDuration"
                            },
                            {
                              "name": "Sessions",
                              "value": "sessions"
                            },
                            {
                              "name": "Sessions per User",
                              "value": "sessionsPerUser"
                            },
                            {
                              "name": "Total Users",
                              "value": "totalUsers"
                            },
                            {
                              "name": "Other metrics…",
                              "value": "other"
                            },
                            {
                              "name": "Custom metric…",
                              "value": "custom"
                            }
                          ]
                        },
                        {
                          "displayName": "Name or ID",
                          "name": "name",
                          "type": "options",
                          "typeOptions": {
                            "loadOptionsMethod": "getMetricsGA4",
                            "loadOptionsDependsOn": [
                              "propertyId.value"
                            ]
                          },
                          "default": "totalUsers",
                          "hint": "If expression is specified, name can be any string that you would like",
                          "description": "The name of the metric. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "other"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Name",
                          "name": "name",
                          "type": "string",
                          "default": "custom_metric",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "custom"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Value Type",
                          "name": "valueType",
                          "type": "options",
                          "default": "doubleValue",
                          "options": [
                            {
                              "name": "Double Value",
                              "value": "doubleValue"
                            },
                            {
                              "name": "Integer Value",
                              "value": "int64Value"
                            }
                          ]
                        },
                        {
                          "displayName": "From Value",
                          "name": "fromValue",
                          "type": "string",
                          "default": ""
                        },
                        {
                          "displayName": "To Value",
                          "name": "toValue",
                          "type": "string",
                          "default": ""
                        }
                      ]
                    },
                    {
                      "displayName": "Numeric Filter",
                      "name": "numericFilter",
                      "values": [
                        {
                          "displayName": "Metric",
                          "name": "listName",
                          "type": "options",
                          "default": "totalUsers",
                          "options": [
                            {
                              "name": "1 Day Active Users",
                              "value": "active1DayUsers"
                            },
                            {
                              "name": "28 Day Active Users",
                              "value": "active28DayUsers"
                            },
                            {
                              "name": "7 Day Active Users",
                              "value": "active7DayUsers"
                            },
                            {
                              "name": "Checkouts",
                              "value": "checkouts"
                            },
                            {
                              "name": "Events",
                              "value": "eventCount"
                            },
                            {
                              "name": "Page Views",
                              "value": "screenPageViews"
                            },
                            {
                              "name": "Session Duration",
                              "value": "userEngagementDuration"
                            },
                            {
                              "name": "Sessions",
                              "value": "sessions"
                            },
                            {
                              "name": "Sessions per User",
                              "value": "sessionsPerUser"
                            },
                            {
                              "name": "Total Users",
                              "value": "totalUsers"
                            },
                            {
                              "name": "Other metrics…",
                              "value": "other"
                            },
                            {
                              "name": "Custom metric…",
                              "value": "custom"
                            }
                          ]
                        },
                        {
                          "displayName": "Name or ID",
                          "name": "name",
                          "type": "options",
                          "typeOptions": {
                            "loadOptionsMethod": "getMetricsGA4",
                            "loadOptionsDependsOn": [
                              "propertyId.value"
                            ]
                          },
                          "default": "totalUsers",
                          "hint": "If expression is specified, name can be any string that you would like",
                          "description": "The name of the metric. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "other"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Name",
                          "name": "name",
                          "type": "string",
                          "default": "custom_metric",
                          "displayOptions": {
                            "show": {
                              "listName": [
                                "custom"
                              ]
                            }
                          }
                        },
                        {
                          "displayName": "Value Type",
                          "name": "valueType",
                          "type": "options",
                          "default": "doubleValue",
                          "options": [
                            {
                              "name": "Double Value",
                              "value": "doubleValue"
                            },
                            {
                              "name": "Integer Value",
                              "value": "int64Value"
                            }
                          ]
                        },
                        {
                          "displayName": "Value",
                          "name": "value",
                          "type": "string",
                          "default": ""
                        },
                        {
                          "displayName": "Operation",
                          "name": "operation",
                          "type": "options",
                          "noDataExpression": true,
                          "default": "EQUAL",
                          "options": [
                            {
                              "name": "Equal",
                              "value": "EQUAL"
                            },
                            {
                              "name": "Greater Than",
                              "value": "GREATER_THAN"
                            },
                            {
                              "name": "Greater than or Equal",
                              "value": "GREATER_THAN_OR_EQUAL"
                            },
                            {
                              "name": "Less Than",
                              "value": "LESS_THAN"
                            },
                            {
                              "name": "Less than or Equal",
                              "value": "LESS_THAN_OR_EQUAL"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "displayName": "Keep Empty Rows",
          "name": "keepEmptyRows",
          "type": "boolean",
          "default": false,
          "description": "Whether false or unspecified, each row with all metrics equal to 0 will not be returned. If true, these rows will be returned if they are not separately removed by a filter."
        },
        {
          "displayName": "Order By",
          "name": "orderByUI",
          "type": "fixedCollection",
          "default": {},
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Order",
          "description": "Specifies how rows are ordered in the response",
          "options": [
            {
              "displayName": "Metric Order By",
              "name": "metricOrderBy",
              "values": [
                {
                  "displayName": "Descending",
                  "name": "desc",
                  "type": "boolean",
                  "default": false,
                  "description": "Whether true, sorts by descending order"
                },
                {
                  "displayName": "Metric Name or ID",
                  "name": "metricName",
                  "type": "options",
                  "typeOptions": {
                    "loadOptionsMethod": "getMetricsGA4",
                    "loadOptionsDependsOn": [
                      "propertyId.value"
                    ]
                  },
                  "default": "",
                  "description": "Sorts by metric values. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
                }
              ]
            },
            {
              "displayName": "Dimmension Order By",
              "name": "dimmensionOrderBy",
              "values": [
                {
                  "displayName": "Descending",
                  "name": "desc",
                  "type": "boolean",
                  "default": false,
                  "description": "Whether true, sorts by descending order"
                },
                {
                  "displayName": "Dimmension Name or ID",
                  "name": "dimensionName",
                  "type": "options",
                  "typeOptions": {
                    "loadOptionsMethod": "getDimensionsGA4",
                    "loadOptionsDependsOn": [
                      "propertyId.value"
                    ]
                  },
                  "default": "",
                  "description": "Sorts by metric values. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
                },
                {
                  "displayName": "Order Type",
                  "name": "orderType",
                  "type": "options",
                  "default": "ORDER_TYPE_UNSPECIFIED",
                  "options": [
                    {
                      "name": "Alphanumeric",
                      "value": "ALPHANUMERIC",
                      "description": "Alphanumeric sort by Unicode code point"
                    },
                    {
                      "name": "Case Insensitive Alphanumeric",
                      "value": "CASE_INSENSITIVE_ALPHANUMERIC",
                      "description": "Case insensitive alphanumeric sort by lower case Unicode code point"
                    },
                    {
                      "name": "Numeric",
                      "value": "NUMERIC",
                      "description": "Dimension values are converted to numbers before sorting"
                    },
                    {
                      "name": "Unspecified",
                      "value": "ORDER_TYPE_UNSPECIFIED"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "displayName": "Return Property Quota",
          "name": "returnPropertyQuota",
          "type": "boolean",
          "default": false,
          "description": "Whether to return the current state of this Analytics Property's quota. Quota is returned in PropertyQuota.",
          "displayOptions": {
            "show": {
              "/simple": [
                false
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "ga4"
          ]
        }
      }
    },
    {
      "displayName": "View",
      "name": "viewId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "The View of Google Analytics",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "placeholder": "Select a view...",
          "typeOptions": {
            "searchListMethod": "searchViews",
            "searchFilterRequired": false,
            "searchable": false
          }
        },
        {
          "displayName": "By URL",
          "name": "url",
          "type": "string",
          "placeholder": "https://analytics.google.com/analytics/...",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": ".*analytics.google.com/analytics.*p[0-9]{1,}.*",
                "errorMessage": "Not a valid Google Analytics URL"
              }
            }
          ],
          "extractValue": {
            "type": "regex",
            "regex": ".*analytics.google.com/analytics.*p([0-9]{1,})"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "placeholder": "123456",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[0-9]{1,}",
                "errorMessage": "Not a valid Google Analytics View ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Date Range",
      "name": "dateRange",
      "type": "options",
      "default": "last7days",
      "options": [
        {
          "name": "Last 7 Days",
          "value": "last7days"
        },
        {
          "name": "Last 30 Days",
          "value": "last30days"
        },
        {
          "name": "Today",
          "value": "today"
        },
        {
          "name": "Yesterday",
          "value": "yesterday"
        },
        {
          "name": "Last Complete Calendar Week",
          "value": "lastCalendarWeek"
        },
        {
          "name": "Last Complete Calendar Month",
          "value": "lastCalendarMonth"
        },
        {
          "name": "Custom",
          "value": "custom"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ]
        }
      }
    },
    {
      "displayName": "Start",
      "name": "startDate",
      "type": "dateTime",
      "default": "2026-07-08T00:00:00.000+02:00",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ],
          "dateRange": [
            "custom"
          ]
        }
      }
    },
    {
      "displayName": "End",
      "name": "endDate",
      "type": "dateTime",
      "default": "2026-07-15T00:00:00.000+02:00",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ],
          "dateRange": [
            "custom"
          ]
        }
      }
    },
    {
      "displayName": "Metrics",
      "name": "metricsUA",
      "type": "fixedCollection",
      "default": {
        "metricValues": [
          {
            "listName": "ga:users"
          }
        ]
      },
      "description": "Metrics in the request",
      "options": [
        {
          "displayName": "Metric",
          "name": "metricValues",
          "values": [
            {
              "displayName": "Metric",
              "name": "listName",
              "type": "options",
              "default": "ga:users",
              "options": [
                {
                  "name": "Checkouts",
                  "value": "ga:productCheckouts"
                },
                {
                  "name": "Events",
                  "value": "ga:totalEvents"
                },
                {
                  "name": "Page Views",
                  "value": "ga:pageviews"
                },
                {
                  "name": "Session Duration",
                  "value": "ga:sessionDuration"
                },
                {
                  "name": "Sessions",
                  "value": "ga:sessions"
                },
                {
                  "name": "Sessions per User",
                  "value": "ga:sessionsPerUser"
                },
                {
                  "name": "Total Users",
                  "value": "ga:users"
                },
                {
                  "name": "Other metrics…",
                  "value": "other"
                },
                {
                  "name": "Custom metric…",
                  "value": "custom"
                }
              ]
            },
            {
              "displayName": "Name or ID",
              "name": "name",
              "type": "options",
              "typeOptions": {
                "loadOptionsMethod": "getMetrics",
                "loadOptionsDependsOn": [
                  "viewId.value"
                ]
              },
              "default": "ga:users",
              "hint": "If expression is specified, name can be any string that you would like",
              "description": "The name of the metric. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
              "displayOptions": {
                "show": {
                  "listName": [
                    "other"
                  ]
                }
              }
            },
            {
              "displayName": "Name",
              "name": "name",
              "type": "string",
              "default": "custom_metric",
              "displayOptions": {
                "show": {
                  "listName": [
                    "custom"
                  ]
                }
              }
            },
            {
              "displayName": "Expression",
              "name": "expression",
              "type": "string",
              "default": "",
              "placeholder": "e.g. ga:totalRefunds/ga:users",
              "description": "Learn more about Google Analytics <a href=\"https://developers.google.com/analytics/devguides/reporting/core/v4/rest/v4/reports/batchGet#Metric\">metric expressions</a>",
              "displayOptions": {
                "show": {
                  "listName": [
                    "custom"
                  ]
                }
              }
            },
            {
              "displayName": "Formatting Type",
              "name": "formattingType",
              "type": "options",
              "default": "INTEGER",
              "description": "Specifies how the metric expression should be formatted",
              "options": [
                {
                  "name": "Currency",
                  "value": "CURRENCY"
                },
                {
                  "name": "Float",
                  "value": "FLOAT"
                },
                {
                  "name": "Integer",
                  "value": "INTEGER"
                },
                {
                  "name": "Percent",
                  "value": "PERCENT"
                },
                {
                  "name": "Time",
                  "value": "TIME"
                }
              ],
              "displayOptions": {
                "show": {
                  "listName": [
                    "custom"
                  ]
                }
              }
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Dimensions to split by",
      "name": "dimensionsUA",
      "type": "fixedCollection",
      "default": {
        "dimensionValues": [
          {
            "listName": "ga:date"
          }
        ]
      },
      "description": "Dimensions are attributes of your data. For example, the dimension ga:city indicates the city, for example, \"Paris\" or \"New York\", from which a session originates.",
      "options": [
        {
          "displayName": "Values",
          "name": "dimensionValues",
          "values": [
            {
              "displayName": "Dimension",
              "name": "listName",
              "type": "options",
              "default": "ga:date",
              "options": [
                {
                  "name": "Browser",
                  "value": "ga:browser"
                },
                {
                  "name": "Campaign",
                  "value": "ga:campaign"
                },
                {
                  "name": "City",
                  "value": "ga:city"
                },
                {
                  "name": "Country",
                  "value": "ga:country"
                },
                {
                  "name": "Date",
                  "value": "ga:date"
                },
                {
                  "name": "Device Category",
                  "value": "ga:deviceCategory"
                },
                {
                  "name": "Item Name",
                  "value": "ga:productName"
                },
                {
                  "name": "Language",
                  "value": "ga:language"
                },
                {
                  "name": "Page",
                  "value": "ga:pagePath"
                },
                {
                  "name": "Source / Medium",
                  "value": "ga:sourceMedium"
                },
                {
                  "name": "Other dimensions…",
                  "value": "other"
                }
              ]
            },
            {
              "displayName": "Name or ID",
              "name": "name",
              "type": "options",
              "typeOptions": {
                "loadOptionsMethod": "getDimensions",
                "loadOptionsDependsOn": [
                  "viewId.value"
                ]
              },
              "default": "ga:date",
              "description": "Name of the dimension to fetch, for example ga:browser. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
              "displayOptions": {
                "show": {
                  "listName": [
                    "other"
                  ]
                }
              }
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "report"
          ],
          "propertyType": [
            "universal"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "report"
          ],
          "propertyType": [
            "universal"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 1000
      }
    },
    {
      "displayName": "Simplify Output",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "operation": [
            "get"
          ],
          "resource": [
            "report"
          ],
          "propertyType": [
            "universal"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Dimension Filters",
          "name": "dimensionFiltersUi",
          "type": "fixedCollection",
          "default": {},
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Dimension Filter",
          "description": "Dimension Filters in the request",
          "options": [
            {
              "displayName": "Filters",
              "name": "filterValues",
              "values": [
                {
                  "displayName": "Dimension",
                  "name": "listName",
                  "type": "options",
                  "default": "ga:date",
                  "options": [
                    {
                      "name": "Browser",
                      "value": "ga:browser"
                    },
                    {
                      "name": "Campaign",
                      "value": "ga:campaign"
                    },
                    {
                      "name": "City",
                      "value": "ga:city"
                    },
                    {
                      "name": "Country",
                      "value": "ga:country"
                    },
                    {
                      "name": "Date",
                      "value": "ga:date"
                    },
                    {
                      "name": "Device Category",
                      "value": "ga:deviceCategory"
                    },
                    {
                      "name": "Item Name",
                      "value": "ga:productName"
                    },
                    {
                      "name": "Language",
                      "value": "ga:language"
                    },
                    {
                      "name": "Page",
                      "value": "ga:pagePath"
                    },
                    {
                      "name": "Source / Medium",
                      "value": "ga:sourceMedium"
                    },
                    {
                      "name": "Other dimensions…",
                      "value": "other"
                    }
                  ]
                },
                {
                  "displayName": "Name or ID",
                  "name": "name",
                  "type": "options",
                  "typeOptions": {
                    "loadOptionsMethod": "getDimensions",
                    "loadOptionsDependsOn": [
                      "viewId.value"
                    ]
                  },
                  "default": "ga:date",
                  "description": "Name of the dimension to fetch, for example ga:browser. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
                  "displayOptions": {
                    "show": {
                      "listName": [
                        "other"
                      ]
                    }
                  }
                },
                {
                  "displayName": "Operator",
                  "name": "operator",
                  "type": "options",
                  "default": "EXACT",
                  "description": "Operator to use in combination with value",
                  "options": [
                    {
                      "name": "Begins With",
                      "value": "BEGINS_WITH"
                    },
                    {
                      "name": "Ends With",
                      "value": "ENDS_WITH"
                    },
                    {
                      "name": "Equals (Number)",
                      "value": "NUMERIC_EQUAL"
                    },
                    {
                      "name": "Exactly Matches",
                      "value": "EXACT"
                    },
                    {
                      "name": "Greater Than (Number)",
                      "value": "NUMERIC_GREATER_THAN"
                    },
                    {
                      "name": "Less Than (Number)",
                      "value": "NUMERIC_LESS_THAN"
                    },
                    {
                      "name": "Partly Matches",
                      "value": "PARTIAL"
                    },
                    {
                      "name": "Regular Expression",
                      "value": "REGEXP"
                    }
                  ]
                },
                {
                  "displayName": "Value",
                  "name": "expressions",
                  "type": "string",
                  "default": "",
                  "placeholder": "",
                  "description": "String or <a href=\"https://support.google.com/analytics/answer/1034324?hl=en\">regular expression</a> to match against"
                }
              ]
            }
          ]
        },
        {
          "displayName": "Hide Totals",
          "name": "hideTotals",
          "type": "boolean",
          "default": false,
          "description": "Whether to hide the total of all metrics for all the matching rows, for every date range",
          "displayOptions": {
            "show": {
              "/simple": [
                false
              ]
            }
          }
        },
        {
          "displayName": "Hide Value Ranges",
          "name": "hideValueRanges",
          "type": "boolean",
          "default": false,
          "description": "Whether to hide the minimum and maximum across all matching rows",
          "displayOptions": {
            "show": {
              "/simple": [
                false
              ]
            }
          }
        },
        {
          "displayName": "Include Empty Rows",
          "name": "includeEmptyRows",
          "type": "boolean",
          "default": false,
          "description": "Whether the response exclude rows if all the retrieved metrics are equal to zero"
        },
        {
          "displayName": "Use Resource Quotas",
          "name": "useResourceQuotas",
          "type": "boolean",
          "default": false,
          "description": "Whether to enable resource based quotas",
          "displayOptions": {
            "show": {
              "/simple": [
                false
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "report"
          ],
          "operation": [
            "get"
          ],
          "propertyType": [
            "universal"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "search",
      "options": [
        {
          "name": "Search",
          "value": "search",
          "description": "Return user activity data",
          "action": "Search user activity data"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "userActivity"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "View Name or ID",
      "name": "viewId",
      "type": "options",
      "default": "",
      "description": "The view from Google Analytics. 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": [
            "userActivity"
          ],
          "operation": [
            "search"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getViews"
      }
    },
    {
      "displayName": "User ID",
      "name": "userId",
      "type": "string",
      "default": "",
      "description": "ID of a user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "userActivity"
          ],
          "operation": [
            "search"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "operation": [
            "search"
          ],
          "resource": [
            "userActivity"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "operation": [
            "search"
          ],
          "resource": [
            "userActivity"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 500
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Activity Types",
          "name": "activityTypes",
          "type": "multiOptions",
          "options": [
            {
              "name": "Ecommerce",
              "value": "ECOMMERCE"
            },
            {
              "name": "Event",
              "value": "EVENT"
            },
            {
              "name": "Goal",
              "value": "GOAL"
            },
            {
              "name": "Pageview",
              "value": "PAGEVIEW"
            },
            {
              "name": "Screenview",
              "value": "SCREENVIEW"
            }
          ],
          "description": "Type of activites requested",
          "default": []
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "search"
          ],
          "resource": [
            "userActivity"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "get",
      "name": "Get",
      "description": "Return the analytics data",
      "resource": "report"
    },
    {
      "operation": "search",
      "name": "Search",
      "description": "Return user activity data",
      "resource": "userActivity"
    }
  ]


node_type: nodes-base.googleBigQuery
package_name: n8n-nodes-base
display_name: Google BigQuery
description: Consume Google BigQuery API
category: input
development_style: programmatic
version: 2.1
outputs:
  [
  "main"
  ]

updated_at: 2026-07-16 12:10:22
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Google BigQuery node documentation
  description: Learn how to use the Google BigQuery node in n8n. Follow technical documentation to integrate Google BigQuery node into your workflows.
  contentType: [integration, reference]
  priority: medium
  ---

  # Google BigQuery node

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

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

  /// note | Credentials
  Refer to [Google BigQuery credentials](/integrations/builtin/credentials/google/index.md) for guidance on setting up authentication. 
  ///

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

  ## Operations

  - Execute Query
  - Insert

  ## Templates and examples

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

  ## Related resources

  Refer to [Google BigQuery's documentation](https://cloud.google.com/bigquery/docs/reference/rest){:target=_blank .external-link} for more information about the service.

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

properties_schema:
  [
    {
      "displayName": "Authentication",
      "name": "authentication",
      "type": "options",
      "default": "oAuth2",
      "options": [
        {
          "name": "OAuth2 (recommended)",
          "value": "oAuth2"
        },
        {
          "name": "Service Account",
          "value": "serviceAccount"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "hidden",
      "default": "database",
      "options": [
        {
          "name": "Database",
          "value": "database"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "executeQuery",
      "options": [
        {
          "name": "Execute Query",
          "value": "executeQuery",
          "description": "Execute a SQL query",
          "action": "Execute a SQL query"
        },
        {
          "name": "Insert",
          "value": "insert",
          "description": "Insert rows in a table",
          "action": "Insert rows in a table"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Project",
      "name": "projectId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Projects to which you have been granted any project role",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "executeQuery",
            "insert"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchProjects",
            "searchable": true
          }
        },
        {
          "displayName": "By URL",
          "name": "url",
          "type": "string",
          "extractValue": {
            "type": "regex",
            "regex": "https:\\/\\/console.cloud.google.com\\/bigquery\\?project=([0-9a-zA-Z\\-_]+).{0,}"
          },
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "https:\\/\\/console.cloud.google.com\\/bigquery\\?project=([0-9a-zA-Z\\-_]+).{0,}",
                "errorMessage": "Not a valid BigQuery Project URL"
              }
            }
          ]
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9\\-_]{2,}",
                "errorMessage": "Not a valid BigQuery Project ID"
              }
            }
          ],
          "url": "=https://console.cloud.google.com/bigquery?project={{$value}}"
        }
      ]
    },
    {
      "displayName": "Dataset",
      "name": "datasetId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "insert"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchDatasets",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9\\-_]{2,}",
                "errorMessage": "Not a valid Dataset ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "tableId",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "insert"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchTables",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9\\-_]{2,}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "SQL Query",
      "name": "sqlQuery",
      "type": "string",
      "default": "",
      "description": "SQL query to execute, you can find more information <a href=\"https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax\" target=\"_blank\">here</a>. Standard SQL syntax used by default, but you can also use Legacy SQL syntax by using optinon 'Use Legacy SQL'.",
      "displayOptions": {
        "hide": {
          "/options.useLegacySql": [
            true
          ]
        },
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "executeQuery"
          ]
        }
      },
      "typeOptions": {
        "editor": "sqlEditor"
      },
      "noDataExpression": true
    },
    {
      "displayName": "SQL Query",
      "name": "sqlQuery",
      "type": "string",
      "default": "",
      "description": "SQL query to execute, you can find more information about Legacy SQL syntax <a href=\"https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax\" target=\"_blank\">here</a>",
      "displayOptions": {
        "show": {
          "/options.useLegacySql": [
            true
          ],
          "resource": [
            "database"
          ],
          "operation": [
            "executeQuery"
          ]
        }
      },
      "typeOptions": {
        "editor": "sqlEditor"
      },
      "noDataExpression": true
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Default Dataset Name or ID",
          "name": "defaultDataset",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getDatasets",
            "loadOptionsDependsOn": [
              "projectId.value"
            ]
          },
          "default": "",
          "description": "If not set, all table names in the query string must be qualified in the format 'datasetId.tableId'. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Dry Run",
          "name": "dryRun",
          "type": "boolean",
          "default": false,
          "description": "Whether set to true BigQuery doesn't run the job. Instead, if the query is valid, BigQuery returns statistics about the job such as how many bytes would be processed. If the query is invalid, an error returns."
        },
        {
          "displayName": "Include Schema in Output",
          "name": "includeSchema",
          "type": "boolean",
          "default": false,
          "description": "Whether to include the schema in the output. If set to true, the output will contain key '_schema' with the schema of the table.",
          "displayOptions": {
            "hide": {
              "rawOutput": [
                true
              ]
            }
          }
        },
        {
          "displayName": "Location (Region)",
          "name": "location",
          "type": "string",
          "default": "",
          "placeholder": "e.g. europe-west3",
          "description": "Location or the region where data would be stored and processed. Pricing for storage and analysis is also defined by location of data and reservations, more information <a href=\"https://cloud.google.com/bigquery/docs/locations\" target=\"_blank\">here</a>."
        },
        {
          "displayName": "Maximum Bytes Billed",
          "name": "maximumBytesBilled",
          "type": "string",
          "default": "",
          "description": "Limits the bytes billed for this query. Queries with bytes billed above this limit will fail (without incurring a charge). String in <a href=\"https://developers.google.com/discovery/v1/type-format?utm_source=cloud.google.com&utm_medium=referral\" target=\"_blank\">Int64Value</a> format"
        },
        {
          "displayName": "Max Results Per Page",
          "name": "maxResults",
          "type": "number",
          "default": 1000,
          "description": "Maximum number of results to return per page of results. This is particularly useful when dealing with large datasets. It will not affect the total number of results returned, e.g. rows in a table. You can use LIMIT in your SQL query to limit the number of rows returned."
        },
        {
          "displayName": "Timeout",
          "name": "timeoutMs",
          "type": "number",
          "default": 10000,
          "hint": "How long to wait for the query to complete, in milliseconds",
          "description": "Specifies the maximum amount of time, in milliseconds, that the client is willing to wait for the query to complete. Be aware that the call is not guaranteed to wait for the specified timeout; it typically returns after around 200 seconds (200,000 milliseconds), even if the query is not complete."
        },
        {
          "displayName": "Raw Output",
          "name": "rawOutput",
          "type": "boolean",
          "default": false,
          "displayOptions": {
            "hide": {
              "dryRun": [
                true
              ]
            }
          }
        },
        {
          "displayName": "Use Legacy SQL",
          "name": "useLegacySql",
          "type": "boolean",
          "default": false,
          "description": "Whether to use BigQuery's legacy SQL dialect for this query. If set to false, the query will use BigQuery's standard SQL."
        },
        {
          "displayName": "Return Integers as Numbers",
          "name": "returnAsNumbers",
          "type": "boolean",
          "default": false,
          "description": "Whether all integer values will be returned as numbers. If set to false, all integer values will be returned as strings."
        },
        {
          "displayName": "Query Parameters (Named)",
          "name": "queryParameters",
          "type": "fixedCollection",
          "description": "Use <a href=\"https://cloud.google.com/bigquery/docs/parameterized-queries#using_structs_in_parameterized_queries\" target=\"_blank\">parameterized queries</a> to prevent SQL injections. Positional arguments are not supported at the moment. This feature won't be available when using legacy SQL.",
          "displayOptions": {
            "hide": {
              "/options.useLegacySql": [
                true
              ]
            }
          },
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Parameter",
          "default": {
            "namedParameters": [
              {
                "name": "",
                "value": ""
              }
            ]
          },
          "options": [
            {
              "name": "namedParameters",
              "displayName": "Named Parameter",
              "values": [
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": "",
                  "description": "Name of the parameter"
                },
                {
                  "displayName": "Value",
                  "name": "value",
                  "type": "string",
                  "default": "",
                  "description": "The substitute value. It must be a string. Arrays, dates and struct types mentioned in <a href=\"https://cloud.google.com/bigquery/docs/parameterized-queries#using_structs_in_parameterized_queries\" target=\"_blank\">the official documentation</a> are not yet supported."
                }
              ]
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "executeQuery"
          ]
        }
      }
    },
    {
      "displayName": "Data Mode",
      "name": "dataMode",
      "type": "options",
      "default": "autoMap",
      "description": "Whether to insert the input data this node receives in the new row",
      "options": [
        {
          "name": "Auto-Map Input Data",
          "value": "autoMap",
          "description": "Use when node input properties match destination field names"
        },
        {
          "name": "Map Each Field Below",
          "value": "define",
          "description": "Set the value for each destination field"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "insert"
          ]
        }
      }
    },
    {
      "displayName": "In this mode, make sure the incoming data fields are named the same as the columns in BigQuery. (Use an 'Edit Fields' node before this node to change them if required.)",
      "name": "info",
      "type": "notice",
      "default": "",
      "displayOptions": {
        "show": {
          "dataMode": [
            "autoMap"
          ],
          "resource": [
            "database"
          ],
          "operation": [
            "insert"
          ]
        }
      }
    },
    {
      "displayName": "Fields to Send",
      "name": "fieldsUi",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Field",
          "name": "values",
          "values": [
            {
              "displayName": "Field Name or ID",
              "name": "fieldId",
              "type": "options",
              "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
              "typeOptions": {
                "loadOptionsDependsOn": [
                  "projectId.value",
                  "datasetId.value",
                  "tableId.value"
                ],
                "loadOptionsMethod": "getSchema"
              },
              "default": ""
            },
            {
              "displayName": "Field Value",
              "name": "fieldValue",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "database"
          ],
          "operation": [
            "insert"
          ]
        }
      },
      "typeOptions": {
        "multipleValueButtonText": "Add Field",
        "multipleValues": true
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Batch Size",
          "name": "batchSize",
          "type": "number",
          "default": 100,
          "typeOptions": {
            "minValue": 1
          }
        },
        {
          "displayName": "Ignore Unknown Values",
          "name": "ignoreUnknownValues",
          "type": "boolean",
          "default": false,
          "description": "Whether to gnore row values that do not match the schema"
        },
        {
          "displayName": "Skip Invalid Rows",
          "name": "skipInvalidRows",
          "type": "boolean",
          "default": false,
          "description": "Whether to skip rows with values that do not match the schema"
        },
        {
          "displayName": "Template Suffix",
          "name": "templateSuffix",
          "type": "string",
          "default": "",
          "description": "Create a new table based on the destination table and insert rows into the new table. The new table will be named <code>{destinationTable}{templateSuffix}</code>"
        },
        {
          "displayName": "Trace ID",
          "name": "traceId",
          "type": "string",
          "default": "",
          "description": "Unique ID for the request, for debugging only. It is case-sensitive, limited to up to 36 ASCII characters. A UUID is recommended."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "database"
          ],
          "operation": [
            "insert"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "executeQuery",
      "name": "Execute Query",
      "description": "Execute a SQL query",
      "resource": "database"
    },
    {
      "operation": "insert",
      "name": "Insert",
      "description": "Insert rows in a table",
      "resource": "database"
    }
  ]

credentials_required:
  [
    {
      "name": "googleApi",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "serviceAccount"
          ]
        }
      }
    },
    {
      "name": "googleBigQueryOAuth2Api",
      "required": true,
      "displayOptions": {
        "show": {
          "authentication": [
            "oAuth2"
          ]
        }
      }
    }
  ]


