GitHub

Manage GitHub issues, pull requests, and labels directly from NocoDB workflows.

NocoDB integrates with GitHub to enable automated development workflows directly from your bases. Using the GitHub integration, you can manage issues, pull requests, and labels — or trigger workflows based on GitHub events.

Prerequisites

  • GitHub account: Learn more about GitHub and create an account by visiting the GitHub website and referring to the GitHub documentation.
  • NocoDB GitHub integration: Refer to Integrations for setup instructions. At least one GitHub integration must be configured to use this feature.

Currently, the GitHub node in NocoDB supports one trigger and eight actions:

Trigger

  • GitHub Webhook Trigger

Actions

  • Create Issue
  • Update Issue
  • List Issues
  • Add Issue Labels
  • Set Issue Labels
  • Remove Issue Label
  • Create Pull Request
  • List Pull Requests

Each can be added as a workflow step and configured independently.


Trigger

GitHub Webhook Trigger

Use this trigger to start a workflow when specific events occur in a GitHub repository.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository to monitor.

  • Events: Choose one or more events to listen for:

    • push, pull_request, issues, issue_comment, release, star, fork, watch

The webhook is automatically created when the workflow is published and removed when unpublished.


Available GitHub Actions

1. Create Issue

Use this action to create a new issue in a GitHub repository.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the target repository.

  • Title: (required) Title of the issue (max 256 characters).

  • Body: (optional) Description of the issue. Supports Markdown.

  • Milestone: (optional) Select a milestone from the repository.

  • Labels: (optional) Select one or more labels to apply.

  • Assignees: (optional) Select one or more users to assign.


2. Update Issue

Use this action to update an existing GitHub issue.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository containing the issue.

  • Issue Number: (required) The number of the issue to update.

  • Title: (optional) Updated title.

  • Body: (optional) Updated description.

  • State: (optional) Set to open or closed.

  • Milestone: (optional) Update the milestone.

  • Labels: (optional) Update labels on the issue.

  • Assignees: (optional) Update assigned users.


3. List Issues

Use this action to retrieve issues from a GitHub repository.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository.

  • State: (optional) Filter by open, closed, or all. Default: open.

  • Labels: (optional) Filter by one or more labels.

  • Assignee: (optional) Filter by assigned user.

  • Milestone: (optional) Filter by milestone.

  • Sort: (optional) Sort by created, updated, or comments.

  • Direction: (optional) Sort direction: asc or desc.

  • Results per page: (optional) Number of results to return (max 100).


4. Add Issue Labels

Use this action to add one or more labels to an existing issue without removing existing labels.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository.

  • Issue Number: (required) The issue to modify.

  • Labels: (required) One or more labels to add.


5. Set Issue Labels

Use this action to replace all labels on an issue with a new set.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository.

  • Issue Number: (required) The issue to modify.

  • Labels: (optional) Labels to set. Existing labels will be removed and replaced with these.


6. Remove Issue Label

Use this action to remove a specific label from an issue.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository.

  • Issue Number: (required) The issue to modify.

  • Label: (required) The label to remove.


7. Create Pull Request

Use this action to create a new pull request.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository.

  • Title: (required) Title of the pull request (max 256 characters).

  • Source Branch: (required) The branch containing your changes.

  • Target Branch: (required) The branch you want to merge into.

  • Body: (optional) Description of the pull request. Supports Markdown.

  • Draft: (optional) Create as a draft pull request.

  • Allow maintainer edits: (optional) Allow maintainers of the base branch to push to the PR branch.


8. List Pull Requests

Use this action to retrieve pull requests from a repository.

Configuration

  • GitHub Account: Select the connected GitHub account.

  • Repository: Select the repository.

  • State: (optional) Filter by open, closed, or all. Default: open.

  • Head Branch: (optional) Filter by source branch.

  • Base Branch: (optional) Filter by target branch.

  • Sort: (optional) Sort by created, updated, popularity, or long-running.

  • Direction: (optional) Sort direction: asc or desc.

  • Results per page: (optional) Number of results to return (max 100).


Testing the Action

Each GitHub action includes a Test Step option.

Use this to:

  • Validate credentials and configuration
  • Confirm the action executes correctly
  • Test using data from previously tested workflow steps

Notes & Limitations

  • Repositories must grant admin, maintain, or push permissions for the authenticated user.
  • Webhook triggers require the repository to allow webhook creation.
  • Labels, milestones, and assignees are fetched dynamically from the selected repository.
  • Issue numbers must be valid integers.