Skip to content
All connectors
GitHub logo

GitHub

Software delivery, ITSM & observability

Turn incidents and requests into GitHub work items, and keep status in step across your tools.

51 ways to read, 27 ways to write, each write switched on by you.

Quality checks

Built and tested with example responses.

  1. Ready to connect: doneEvery listed action is built in.
  2. Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
GitHub with Nexra

Connected, approved, proven.

The things teams do most with GitHub, an example flow with a person in the loop, and what Nexra keeps as proof.

Top actions

  • Create branchbranches.createApproval by rule
  • Create commit statuscommit_statuses.createApproval by rule
  • List assignable usersassignees.listRead

Example flow

  1. GitHub · List assignable usersassignees.listDone
  2. GitHub · Create branchbranches.createMaker-checker
  3. Nexra · Record the decision and result in the evidence chainProven

Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches GitHub.

What gets logged

  • Whether it ran on its own or who approved it, and under which rule
  • A fingerprint of the exact request sent to GitHub
  • GitHub's reply: what it created or changed
  • One entry in the evidence chain, linked to the one before

Try this in the sandbox

Run the whole flow with test data in your sandbox, then connect a GitHub test account before you go live.

For developers

Technical detail

GitHub repositories, files, issues, sub-issues, labels, milestones, pull requests, reviews, checks, statuses, releases, deployments and Actions runs.

GitHub API docs
Source actions
51
Destination actions
27
Data types
40

What you can map

Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.

assignees1
  • List assignable usersSource

    Users who can be assigned to issues and pull requests in the repository.

branches3
  • Create branchDestinationProvider duplicate protectionApproval before production

    Creates a branch reference pointing at a commit SHA.

  • Get branchSource

    One branch with its head commit and protection flag.

  • List branchesSource

    Branches with head commit and protection flag.

check runs2
  • Get check runSource

    One check run with its output summary.

  • List check runsSource

    Check runs (CI and app checks) for a commit, branch or tag.

check suites1
  • List check suitesSource

    Check suites (one per app) for a commit, branch or tag.

combined statuses1
  • Get combined commit statusSource

    The overall status of a commit with the latest status per context.

commit statuses2
  • Create commit statusDestinationNot retried automaticallyApproval before production

    Posts a status (for example from an external check) against a commit.

  • List commit statusesSource

    Every status posted on a commit, newest first.

commits2
  • Get commitSource

    One commit with change statistics and changed file names.

  • List commitsSourceIncremental

    Commits on a branch or path, newest first.

contributors1
  • List contributorsSource

    Contributors with commit counts, most active first. Anonymous contributors are excluded.

current user1
  • Get authenticated userSource

    The account that owns the token.

deployment statuses1
  • List deployment statusesSource

    Status history of a deployment, newest first.

deployments2
  • Get deploymentSource

    One deployment.

  • List deploymentsSource

    Deployments by environment, ref or SHA, newest first.

draft releases1
  • Create draft releaseDestinationNot retried automaticallyApproval before production

    Creates an unpublished draft release. Nothing is published and no tag is created until someone publishes it in GitHub.

files1
  • Get fileSource

    One file's metadata and, for text files up to 1 MB, its UTF-8 content.

issue assignees1
  • Add issue assigneesDestinationProvider duplicate protectionApproval before production

    Adds up to 10 assignees to an issue or pull request; existing assignees are kept.

issue comments4
  • Add issue commentDestinationNot retried automaticallyApproval before production

    Adds a comment to an issue or pull request conversation.

  • Get issue commentSource

    One issue or pull request conversation comment.

  • List issue commentsSourceIncremental

    Comments on one issue or pull request, or on every issue in the repository when no number is given.

  • Update issue commentDestinationProvider duplicate protectionApproval before production

    Replaces the body of an existing comment.

issue events1
  • List issue eventsSource

    Activity on an issue or pull request: labels, assignments, milestones, renames, closes and references.

issue labels3
  • Add labels to issueDestinationProvider duplicate protectionApproval before production

    Adds labels to an issue or pull request; existing labels are kept.

  • List issue labelsSource

    Labels on one issue or pull request.

  • Set issue labelsDestinationProvider duplicate protectionApproval before production

    Replaces every label on an issue or pull request with the given list.

issues5
  • Create issueDestinationNot retried automaticallyApproval before production

    Creates an issue with optional assignees, labels, milestone and issue type.

  • Get issueSource

    One issue with labels, assignees, milestone and sub-issue summary.

  • List issuesSourceIncremental

    Repository issues (pull requests excluded) ordered by last update, oldest first, for incremental sync.

  • Search issues and pull requestsSourceIncremental

    Issues or pull requests in one repository matched by state, labels, people, milestone and dates.

  • Update issueDestinationProvider duplicate protectionApproval before production

    Updates title, body, state, assignees, labels, milestone or type. Omitted fields are unchanged.

labels4
  • Create labelDestinationProvider duplicate protectionApproval before production

    Creates a repository label. Label names are unique per repository.

  • Get labelSource

    One repository label by name.

  • List labelsSource

    Labels defined in the repository.

  • Update labelDestinationProvider duplicate protectionApproval before production

    Renames a label or changes its colour or description.

latest release1
  • Get latest releaseSource

    The latest published, non-prerelease release.

milestones4
  • Create milestoneDestinationProvider duplicate protectionApproval before production

    Creates a milestone. Titles are unique per repository.

  • Get milestoneSource

    One milestone with issue counts and due date.

  • List milestonesSource

    Open and closed milestones with issue counts and due dates.

  • Update milestoneDestinationProvider duplicate protectionApproval before production

    Updates title, state, description or due date.

organizations1
  • List organisationsSource

    Organisations the token's user belongs to and the token can see.

pull request commits1
  • List pull request commitsSource

    Commits on a pull request, oldest first (up to 250).

pull request files1
  • List pull request filesSource

    Changed files with change type and line counts (up to 3,000 files).

pull request review comments3
  • Add pull request review commentDestinationNot retried automaticallyApproval before production

    Comments on a line or file of a pull request diff, or replies to an existing review comment.

  • List pull request review commentsSourceIncremental

    Line comments on one pull request, or on every pull request in the repository when no number is given.

  • Update pull request review commentDestinationProvider duplicate protectionApproval before production

    Replaces the body of a review comment.

pull request reviewers2
  • Request pull request reviewersDestinationProvider duplicate protectionApproval before production

    Requests reviews from users or teams; already requested reviewers are unchanged.

  • List requested reviewersSource

    Users and teams whose review is still requested on a pull request.

pull request reviews4
  • Create pull request reviewDestinationNot retried automaticallyApproval before production

    Submits a comment or request-changes review, or leaves a pending review when no event is given. Approvals are not supported.

  • Get pull request reviewSource

    One review with its state and body.

  • List pull request reviewsSource

    Submitted reviews with approval state, oldest first.

  • Update pull request reviewDestinationProvider duplicate protectionApproval before production

    Replaces the summary body of a review.

pull requests4
  • Create pull requestDestinationNot retried automaticallyApproval before production

    Opens a pull request from a head branch into a base branch.

  • Get pull requestSource

    One pull request with mergeability and change counts.

  • List pull requestsSource

    Pull requests ordered by last update, newest first.

  • Update pull requestDestinationProvider duplicate protectionApproval before production

    Updates title, description, base branch or open/closed state. Does not merge.

readme1
  • Get READMESource

    The repository's preferred README with its text.

releases4
  • Create releaseDestinationProvider duplicate protectionApproval before production

    Creates a release for a tag, creating the tag from the target if it does not exist.

  • Get releaseSource

    One release by ID, including drafts the token can see.

  • List releasesSource

    Published and draft releases, newest first.

  • Update releaseDestinationProvider duplicate protectionApproval before production

    Updates release notes, name, tag, draft or pre-release flags.

repositories4
  • Get repositorySource

    One repository with its default branch and settings summary.

  • List repositoriesSourceIncremental

    Repositories the token can access, or repositories in one organisation, most recently updated first.

  • Search repositoriesSource

    Repositories of one organisation or user filtered by topic, language, visibility, archive state or last push.

  • Update repository descriptionDestinationProvider duplicate protectionApproval before production

    Updates the repository description or homepage. Visibility, default branch, archiving and settings are never changed.

repository contents1
  • List directory contentsSource

    Files and folders in a repository directory (metadata only, up to 1,000 entries).

repository languages1
  • List repository languagesSource

    Languages detected in the repository with their size in bytes.

repository topics1
  • Replace repository topicsDestinationProvider duplicate protectionApproval before production

    Replaces every topic on the repository with the given list.

sub issues2
  • Add sub-issueDestinationProvider duplicate protectionApproval before production

    Makes an existing issue a sub-issue of a parent issue and returns the parent.

  • List sub-issuesSource

    Sub-issues of a parent issue.

tags1
  • List tagsSource

    Repository tags with their commit SHA.

workflow dispatches1
  • Run workflowDestinationNot retried automaticallyApproval before production

    Triggers a workflow that has a workflow_dispatch trigger and returns the new run ID.

workflow jobs1
  • List workflow run jobsSource

    Jobs in a workflow run with status, conclusion, runner and timings. Logs are not read.

workflow runs2
  • Get workflow runSource

    One GitHub Actions run with status and conclusion.

  • List workflow runsSourceIncremental

    GitHub Actions runs with status and conclusion, newest first.

workflows1
  • List Actions workflowsSource

    GitHub Actions workflows defined in the repository.

Access and limits

Authentication
Fine-grained personal access token
Plans and access
All GitHub plans, including Free; Actions data requires Actions to be enabled. Fine-grained personal access tokens are limited to the selected repositories and permissions. Organisations can require approval for fine-grained tokens.
Test environment
A free personal account or test organisation with a private repository works for testing.
Rate limits
5,000 requests per hour per user token (15,000 on Enterprise Cloud) plus secondary limits on concurrency and content creation; HTTP 403/429 with Retry-After or x-ratelimit-reset.
Pagination
Link header rel="next" with per_page up to 100.
Provider events
Repository and organisation webhooks for issues, pull requests, releases and workflow runs. Flows can start the moment something happens: when code is pushed; when a pull request is opened or changed; when an issue is opened or changed.

Before you build a flow

  • Projects (v2) are GraphQL-only and are not included.
  • The repository issues endpoint also returns pull requests; Nexra filters them out of issues.list and marks the page cursor from GitHub's Link header.
  • Pull request lists have no updated-since filter; they are sorted by last update, newest first.
  • Merging pull requests, deleting resources and uploading release assets are not implemented.
  • Issue, comment, pull request, review, status and workflow dispatch creates have no idempotency key; uncertain writes are not repeated automatically.
  • Intentionally excluded: deletes of any kind, merges, review approvals and dismissals, removing labels or assignees, force pushes and ref updates, file commits, repository creation, visibility, settings, collaborator, team, member and invitation changes, Actions secrets and variables, workflow re-runs and cancellations, check run writes, release publishing and release asset uploads.
  • Search operations build the query only from validated qualifiers (repository, state, labels, people, milestone, dates); free-text search and code search are not offered.
  • Ref inputs on commits.get, statuses, check runs and branches.get are single path segments: branch names that contain / must be given as a commit SHA.
  • File reads return text only for UTF-8 files up to 1 MB; larger or binary files return metadata.

Developer reference

  1. Create the GitHub credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose GitHub, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/github and the Connections API.