GitHub
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.
- Ready to connect: doneEvery listed action is built in.
- 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.
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 branch
branches.createApproval by rule - Create commit status
commit_statuses.createApproval by rule - List assignable users
assignees.listRead
Example flow
- GitHub · List assignable users
assignees.listDone - GitHub · Create branch
branches.createMaker-checker - 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
- Create the GitHub credentials described above with the narrowest permissions your flows need.
- 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
- 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.