Documentation

n8n-nodes-github-server

Custom n8n nodes for GitHub — automate issues, pull requests, repositories, releases, users, and webhooks.

Features

GitHub Node (Actions)

Resource Operations
Issue Create, Get, Get Many, Create Comment, Update, Lock
Pull Request Create, Get, Get Many, Merge, Update
Release Create, Get, Get Many, Get Latest, Update, Delete
Repository Create, Get, Get Many, List Branches, List Issues, List Languages
User Get, Get Current, Get Repositories, Get Org Members

GitHub Trigger Node (Webhooks)

Listens to 50+ GitHub webhook events, including:

  • push — new commits pushed
  • pull_request — PR opened, closed, merged, etc.
  • issues — issue opened, edited, closed, etc.
  • release — release published, created, deleted
  • star, fork, watch — repository activity
  • workflow_run, workflow_job — CI/CD events
  • …and many more

Authentication

Supports two methods:

  1. Personal Access Token — classic or fine-grained PAT from GitHub settings
  2. OAuth2 — for GitHub OAuth Apps

Installation

In n8n (Community Node)

  1. Go to Settings → Community Nodes
  2. Click Install
  3. Enter n8n-nodes-github-server
  4. Click Install

Manual / Development

npm install
npm run build

Then configure n8n to load custom nodes from this directory.

GitHub Enterprise Support

Set the GitHub Server field in credentials to your enterprise API URL:

https://github.example.com/api/v3

Webhook Trigger Setup

When you activate a workflow containing the GitHub Trigger node, n8n automatically:

  1. Registers a webhook in your repository via the GitHub API
  2. Starts receiving events

When the workflow is deactivated, the webhook is automatically removed.

Tip: Optionally set a Webhook Secret in both n8n and GitHub webhook settings to validate payload integrity.

Development

# Install dependencies
npm install

# Build (TypeScript → JavaScript)
npm run build

# Watch mode
npm run dev

# Lint
npm run lint

License

MIT

Discussion